提供了一套面向生产环境的 Fill 部署模板。
docker-compose.yaml:用于启动 Fill、MongoDB 和 MinIOapplication-prod.yaml:挂载到/config的外置 Spring Boot 配置.env.example:复制为.env后,替换其中所有占位密钥
- 复制
.env.example为.env。 - 替换
.env中所有占位值。 - 检查
application-prod.yaml,把里面的公网 URL 改成你的真实域名。 - 启动服务栈:
docker compose up -d- 在
127.0.0.1:8080前面加一层反向代理,例如Nginx或Caddy。
- Fill 在容器内监听
8080端口。 - 这个模板只对宿主机暴露 Fill 的
127.0.0.1:8080和 MinIO 控制台的127.0.0.1:9001。 - MinIO 的 S3 API 保持在 Compose 内部网络中,Fill 通过
http://minio:9000访问它。 APP_DOWNLOAD_URL应该填写成你希望客户端看到的公网下载域名。APP_JWT_SECRET不能填写普通文本,必须是 Base64 编码后的随机密钥。- MongoDB 和 MinIO 的凭据通过
.env共享给应用。 - MongoDB 数据会直接保存在当前目录下的
data/mongo,便于本地查看、备份和迁移。 - 如果这是一个全新环境,在正式提供服务前需要先初始化数据库。
- 可以在 Linux 服务器上执行下面的命令生成一个可用的 Base64 密钥:
openssl rand -base64 32- 把输出结果完整填到
.env里的APP_JWT_SECRET=后面,然后重启服务:
docker compose up -d- 在反向代理层终止 HTTPS。
- 使用强密码并限制发布相关接口的访问。
- 定期轮换
APP_JWT_SECRET、数据库密码和对象存储凭据。 - 备份 MongoDB 的
data/mongo目录以及 MinIO 的数据卷。 - 如果你需要更高可用性,建议把模板里自带的 MongoDB 和 MinIO 替换成托管服务。