Environment
服务器
确认 AWS 选择 Sydney (ap-southeast-2) 区域的 EC2 实例来部署应用程序。
登录 EC2 实例,检查时区。
date
更新系统
apt update && apt upgrade -y
安装 Docker 和 Docker Compose,确保能够成功运行 Docker 容器。
## 官方安装脚本
curl -fsSL https://get.docker.com -o get-docker.sh && sh get-docker.sh
## swarm 初始化
docker swarm init
安装 nfs-kernel-server
apt install nfs-kernel-server -y
systemctl enable --now nfs-kernel-server
vim /etc/exports
添加以下内容:
/wm 172.31.26.44(rw,sync,no_subtree_check,no_root_squash) 127.0.0.1(rw,sync,no_subtree_check,no_root_squash) ::1(rw,sync,no_subtree_check,no_root_squash)
exportfs -r
数据库
SuiteScript
将 server/src/main/resources/script/wm-app-image-attach.js 上传到 NetSuite 中
得到到 scriptId 和 deployId 后,更新 server 服务的环境变量:
NETSUITE_SCRIPT_IMAGE_ATTACH = script=2374&deploy=1
NS 文件柜
在 NetSuite 中创建一个文件柜,记录 folderId 后,更新 server 服务的环境变量:
NETSUITE_SCRIPT_FOLDER_ID = 170271
NS OAuth2.0 认证
创建 Integration,选择认证方式为 OAuth 2.0 Client Credentials,记录 clientId 和 clientSecret 后,更新 server 服务的环境变量:
NETSUITE_OAUTH2_CLIENT_ID = NETSUITE_OAUTH2_CLIENT_ID
NETSUITE_OAUTH2_CLIENT_SECRET = NETSUITE_OAUTH2_CLIENT_SECRET
生成证书文件,参考:
https://3638035-sb1.app.netsuite.com/app/help/helpcenter.nl?fid=subsect_162755332391.html&whence=
确保安装了 OpenSSL 工具。
openssl req -new -x509 -newkey rsa:4096 -keyout private.pem -sigopt rsa_padding_mode:pss -sha256 -sigopt rsa_pss_saltlen:64 -out public.pem -nodes -days 365
将会生成一对儿 private.pem 和 public.pem 的证书文件。
将 public.pem 上传到 NetSuite 中的 OAuth 2.0 Client Credentials Setup ,得到 certificateId 后,更新 server 服务的环境变量:
NETSUITE_OAUTH2_CERT_ID = NETSUITE_OAUTH2_CERT_ID
portainer
安装 portainer
docker volume create portainer_data
docker run -d -p 8000:8000 -p 9443:9443 -p 9000:9000 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:latest