Add cloud deployment setup
This commit is contained in:
parent
4e04c6f864
commit
0f4580f566
20
deploy/pm2/ecosystem.config.cjs
Normal file
20
deploy/pm2/ecosystem.config.cjs
Normal file
@ -0,0 +1,20 @@
|
||||
module.exports = {
|
||||
apps: [
|
||||
{
|
||||
name: "video-hotness",
|
||||
script: "src/server.js",
|
||||
cwd: "/www/video-hotness",
|
||||
interpreter: "node",
|
||||
env: {
|
||||
NODE_ENV: "production",
|
||||
HOST: "0.0.0.0",
|
||||
PORT: "3000",
|
||||
HOTNESS_ACCESS_PASSWORD: "CHANGE_ME",
|
||||
HOTNESS_DATA_DIR: "/www/video-hotness/data",
|
||||
},
|
||||
max_restarts: 10,
|
||||
restart_delay: 3000,
|
||||
time: true,
|
||||
},
|
||||
],
|
||||
};
|
||||
18
deploy/systemd/video-hotness.service.example
Normal file
18
deploy/systemd/video-hotness.service.example
Normal file
@ -0,0 +1,18 @@
|
||||
[Unit]
|
||||
Description=Video Hotness Collection Service
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
WorkingDirectory=/www/video-hotness
|
||||
ExecStart=/usr/bin/node /www/video-hotness/src/server.js
|
||||
Restart=always
|
||||
RestartSec=3
|
||||
Environment=NODE_ENV=production
|
||||
Environment=HOST=0.0.0.0
|
||||
Environment=PORT=3000
|
||||
Environment=HOTNESS_ACCESS_PASSWORD=CHANGE_ME
|
||||
Environment=HOTNESS_DATA_DIR=/www/video-hotness/data
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
175
火山引擎云服务器部署步骤(推荐PM2常驻).md
Normal file
175
火山引擎云服务器部署步骤(推荐PM2常驻).md
Normal file
@ -0,0 +1,175 @@
|
||||
# 火山引擎云服务器部署步骤(推荐 PM2 常驻)
|
||||
|
||||
服务器公网 IP:
|
||||
|
||||
```text
|
||||
118.196.84.249
|
||||
```
|
||||
|
||||
部署后的访问地址:
|
||||
|
||||
```text
|
||||
http://118.196.84.249:3000/
|
||||
http://118.196.84.249:3000/mobile.html
|
||||
```
|
||||
|
||||
## 1. 登录服务器
|
||||
|
||||
在火山引擎控制台进入:
|
||||
|
||||
```text
|
||||
云服务器 ECS -> 实例 -> Kaikai专用服务器 -> 远程连接
|
||||
```
|
||||
|
||||
打开命令行后先确认系统:
|
||||
|
||||
```bash
|
||||
uname -a
|
||||
```
|
||||
|
||||
## 2. 安装基础工具
|
||||
|
||||
Ubuntu / Debian / veLinux 可执行:
|
||||
|
||||
```bash
|
||||
apt update
|
||||
apt install -y git curl
|
||||
```
|
||||
|
||||
如果提示没有权限,在命令前加 `sudo`。
|
||||
|
||||
## 3. 安装 Node.js 20
|
||||
|
||||
先检查:
|
||||
|
||||
```bash
|
||||
node -v
|
||||
```
|
||||
|
||||
如果不是 `v20` 开头,执行:
|
||||
|
||||
```bash
|
||||
curl -fsSL https://deb.nodesource.com/setup_20.x | bash -
|
||||
apt install -y nodejs
|
||||
node -v
|
||||
npm -v
|
||||
```
|
||||
|
||||
## 4. 拉取代码
|
||||
|
||||
```bash
|
||||
mkdir -p /www
|
||||
git clone https://gitea.airlabs.art/zyc/kaikai_test.git /www/video-hotness
|
||||
cd /www/video-hotness
|
||||
npm install
|
||||
```
|
||||
|
||||
如果仓库要求登录,输入 Gitea 用户名和访问令牌。建议使用访问令牌,不建议长期使用账号密码。
|
||||
|
||||
## 5. 设置访问密码
|
||||
|
||||
复制 PM2 配置:
|
||||
|
||||
```bash
|
||||
cp deploy/pm2/ecosystem.config.cjs ecosystem.config.cjs
|
||||
```
|
||||
|
||||
编辑配置:
|
||||
|
||||
```bash
|
||||
nano ecosystem.config.cjs
|
||||
```
|
||||
|
||||
把这一行:
|
||||
|
||||
```text
|
||||
HOTNESS_ACCESS_PASSWORD: "CHANGE_ME",
|
||||
```
|
||||
|
||||
改成你的云端访问密码,例如:
|
||||
|
||||
```text
|
||||
HOTNESS_ACCESS_PASSWORD: "Kaikai2026",
|
||||
```
|
||||
|
||||
保存:`Ctrl + O`,回车。退出:`Ctrl + X`。
|
||||
|
||||
## 6. 用 PM2 后台常驻
|
||||
|
||||
安装 PM2:
|
||||
|
||||
```bash
|
||||
npm install -g pm2
|
||||
```
|
||||
|
||||
启动:
|
||||
|
||||
```bash
|
||||
pm2 start ecosystem.config.cjs
|
||||
pm2 save
|
||||
pm2 startup
|
||||
```
|
||||
|
||||
`pm2 startup` 会输出一行命令,复制它并执行一次。执行后,服务器重启也会自动恢复。
|
||||
|
||||
## 7. 查看运行状态
|
||||
|
||||
```bash
|
||||
pm2 status
|
||||
pm2 logs video-hotness
|
||||
```
|
||||
|
||||
看到 `online` 就是正在运行。
|
||||
|
||||
## 8. 火山引擎放行端口
|
||||
|
||||
进入火山引擎控制台:
|
||||
|
||||
```text
|
||||
云服务器 ECS -> 实例 -> 安全组
|
||||
```
|
||||
|
||||
添加入方向规则:
|
||||
|
||||
```text
|
||||
协议:TCP
|
||||
端口:3000
|
||||
授权对象:0.0.0.0/0
|
||||
策略:允许
|
||||
```
|
||||
|
||||
保存后访问:
|
||||
|
||||
```text
|
||||
http://118.196.84.249:3000/
|
||||
```
|
||||
|
||||
## 9. 后续更新代码
|
||||
|
||||
以后本地开发推送后,服务器执行:
|
||||
|
||||
```bash
|
||||
cd /www/video-hotness
|
||||
git pull
|
||||
npm install
|
||||
pm2 restart video-hotness
|
||||
```
|
||||
|
||||
## 10. 常见问题
|
||||
|
||||
如果网页打不开:
|
||||
|
||||
```bash
|
||||
pm2 status
|
||||
pm2 logs video-hotness
|
||||
```
|
||||
|
||||
如果服务器能跑但外面打不开,优先检查火山引擎安全组是否放行 `TCP 3000`。
|
||||
|
||||
如果忘记访问密码:
|
||||
|
||||
```bash
|
||||
cd /www/video-hotness
|
||||
nano ecosystem.config.cjs
|
||||
pm2 restart video-hotness
|
||||
```
|
||||
Loading…
x
Reference in New Issue
Block a user