Gemini Storyboard 部署指南
目标:将 Gemini Storyboard 部署到 Ubuntu 服务器,使用域名
aaa.why.vin,对外服务端口8001,支持 HTTP / HTTPS。
目录
一、部署前准备
1.1 服务器信息
1.2 项目文件清单
本地项目路径示例:
E:\mianshi\0128\
1.3 SSL 证书
获取方式:
1Panel 自动申请(Let's Encrypt)
第三方证书服务商
上传位置:
有 1Panel:
/www/ssl/aaa_why_vin/无 1Panel:
/etc/ssl/certs/aaa_why_vin/
二、本地文件修改
2.1 修改 docker-compose.yml
version: '3.8'
services:
app:
build: .
container_name: gemini-storyboard-aaa
restart: unless-stopped
ports:
- "8001:8000"
env_file:
- .env
volumes:
- ./state:/app/state
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8000/healthz"]
interval: 30s
timeout: 10s
retries: 3
修改要点:
容器名避免与
test.why.vin冲突对外端口统一使用
8001
三、服务器部署 · 方案 A(1Panel)
适用场景:服务器已安装 1Panel(OpenResty 在 Docker 中运行)
3.1 登录服务器
ssh ubuntu@175.178.59.129
3.2 创建项目目录
mkdir -p /home/ubuntu/gemini-storyboard-aaa
cd /home/ubuntu/gemini-storyboard-aaa
3.3 上传项目文件
推荐方式:Termius / SFTP
上传以下文件到项目目录:
server.pyIndex.htmlDockerfiledocker-compose.ymlrequirements.txt.env
3.4 上传 SSL 证书
sudo mkdir -p /www/ssl/aaa_why_vin
校验:
openssl x509 -in /www/ssl/aaa_why_vin/fullchain.pem -noout -subject -dates
3.5 防火墙
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw allow 8001/tcp
3.6 Nginx(OpenResty)配置
配置文件:
aaa.why.vin.conf
反向代理:
127.0.0.1:8001SSL 证书路径:
/www/sites/aaa.why.vin/ssl/
配置完成后:
docker exec 1Panel-openresty nginx -t
docker exec 1Panel-openresty nginx -s reload
3.7 启动服务
mkdir -p state
docker compose up -d
四、服务器部署 · 方案 B(原生 Nginx)
适用场景:无 1Panel,直接使用系统 Nginx
4.1 安装 Nginx
sudo apt update && sudo apt install -y nginx
4.2 SSL 证书
sudo mkdir -p /etc/ssl/certs/aaa_why_vin
sudo chmod 600 /etc/ssl/certs/aaa_why_vin/privkey.pem
4.3 站点配置
路径:/etc/nginx/sites-available/aaa.why.vin
HTTP + HTTPS
反代至
127.0.0.1:8001
启用站点:
sudo ln -s /etc/nginx/sites-available/aaa.why.vin /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx
4.4 启动容器
mkdir -p state
docker compose up -d
五、部署验证
curl http://localhost:8001/healthz
curl https://aaa.why.vin/healthz
浏览器访问:
六、常见问题排查
七、运维与管理命令
# 日志
docker compose logs -f
# 重启
docker compose restart
# 更新
docker compose down && docker compose up -d --build
八、文件与目录速查
九、与 test.why.vin 的区别
十、快速检查清单
端口映射
8001:8000容器名唯一
HTTPS 正常
/healthz返回ok:true
🎉 部署完成: https://aaa.why.vin