15 lines
940 B
Markdown
15 lines
940 B
Markdown
# 生产部署(Docker)
|
||
|
||
生产实例使用三个隔离容器:MySQL 系统数据库、Node.js 后端和部署注册服务。MySQL、后端与注册服务只映射到服务器回环地址,公网仅由 Nginx 暴露 `ck.yydd.ai:8443`。
|
||
|
||
服务器目录约定:
|
||
|
||
- `/opt/cangku/app`:仓库代码和前端构建结果
|
||
- `/opt/cangku/shared`:权限为 `0700` 的环境配置
|
||
- `/opt/cangku/data`:MySQL 和部署注册服务持久数据
|
||
- `/www/wwwroot/cangku-acme`:Let's Encrypt HTTP-01 校验目录
|
||
|
||
真实密码、JWT 密钥、部署 Key 和第三方数据库配置不得写入仓库。`mysql.env`、`backend.env` 和 `bootstrap.env` 只在服务器生成并保持 `0600` 权限。
|
||
|
||
SSH 隧道账号只接受由注册服务 CA 签发的短期证书,只允许转发到服务器 `127.0.0.1:3307`,并关闭终端、TTY、代理转发和密码认证。生产主机的 SSH 管理账号使用独立密钥,关闭密码登录。
|