Skip to content

Commit

Permalink
Update tianji-install.sh
Browse files Browse the repository at this point in the history
switch from `pm2` process management to `systemd`
fixes #3876
  • Loading branch information
tteck authored Oct 10, 2024
1 parent b7fe85c commit 4c83a79
Showing 1 changed file with 21 additions and 7 deletions.
28 changes: 21 additions & 7 deletions install/tianji-install.sh
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,6 @@ echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.co
$STD apt-get update
$STD apt-get install -y nodejs
$STD npm install -g pnpm@9.7.1
$STD npm install -g pm2
export NODE_OPTIONS="--max_old_space_size=4096"
msg_ok "Installed Node.js, pnpm & pm2"

Expand Down Expand Up @@ -77,15 +76,30 @@ cat <<EOF >/opt/tianji/src/server/.env
DATABASE_URL="postgresql://$DB_USER:$DB_PASS@localhost:5432/$DB_NAME?schema=public"
JWT_SECRET="$TIANJI_SECRET"
EOF
cd /opt/tianji
$STD npm install pm2 -g
$STD pm2 install pm2-logrotate
cd src/server
cd /opt/tianji/src/server
$STD pnpm db:migrate:apply
$STD pm2 start /opt/tianji/src/server/dist/src/server/main.js --name tianji
$STD pm2 save
msg_ok "Installed Tianji"

msg_info "Creating Service"
cat <<EOF >/etc/systemd/system/tianji.service
[Unit]
Description=Tianji Server
After=network.target
[Service]
ExecStart=/usr/bin/node /opt/tianji/src/server/dist/src/server/main.js
WorkingDirectory=/opt/tianji/src/server
Restart=always
RestartSec=10
Environment=NODE_ENV=production
[Install]
WantedBy=multi-user.target
EOF
systemctl enable -q --now tianji.service
msg_ok "Created Service"

motd_ssh
customize

Expand Down

0 comments on commit 4c83a79

Please sign in to comment.