把原先散落在 D:\fruitshorts\monitoring 的手工栈收编进仓库:prometheus 增加 cAdvisor 与 blackbox 抓取、15 天保留期;grafana 改为 provisioning 自动加载数据源与看板;新增 blackbox/cadvisor 服务;Grafana 管理员密码改走环境变量(必填),不再硬编码 admin/admin。
42 lines
2.1 KiB
Bash
42 lines
2.1 KiB
Bash
# Author: fruit.com.cn
|
|
#
|
|
# 环境变量样例:复制成 .env 后填真实值(.env 不要提交,已在 .gitignore 里)。
|
|
# 生产用 prod profile 时,下面标「必填」的项缺失/仍是 dev 默认值/长度不足 32 位 → 启动直接失败。
|
|
# 详细说明见 DEPLOY.md。
|
|
|
|
# ── 数据库 ─────────────────────────────────────────────
|
|
# Docker Compose 单机部署:db 是 compose 里的服务名,保持默认即可;
|
|
# 若数据库在别的主机/用云托管,把 DB_URL 换成外部地址。
|
|
DB_NAME=fruitshorts
|
|
DB_URL=jdbc:postgresql://db:5432/fruitshorts
|
|
DB_USER=fruitshorts
|
|
DB_PASSWORD=
|
|
|
|
# ── 密钥(必填,各 32 位以上,且不能用代码里的 dev 默认值)──
|
|
# 生成:openssl rand -base64 48
|
|
JWT_ADMIN_SECRET=
|
|
JWT_APP_SECRET=
|
|
MEDIA_SIGNATURE_SECRET=
|
|
|
|
# ── 生产开关 ───────────────────────────────────────────
|
|
# prod profile 会强制 true(缺了签名则启动失败)
|
|
MEDIA_SIGNATURE_REQUIRED=true
|
|
# 后台前端来源,逗号分隔;生产不许用 *
|
|
CORS_ALLOWED_ORIGINS=https://admin.example.com
|
|
# 媒资根目录:容器里是挂载点
|
|
MEDIA_ROOT_DIR=/data/uploads
|
|
# 是否开放在线接口文档(**/doc.html 与 /v3/api-docs 一起开关**,没有"只留一个"的中间态)
|
|
# true = 前端联调能看到 /doc.html(测试/联调环境建议 true,10-19 前端联调需要它)
|
|
# false = 两个都关闭(生产若不希望暴露 UI 就设 false,机器可读契约也一并关闭)
|
|
SWAGGER_ENABLED=true
|
|
|
|
# ── 监控 ───────────────────────────────────────────────
|
|
# Grafana 管理员密码(必填):3000 端口对外开放,不允许用默认 admin/admin
|
|
GRAFANA_ADMIN_USER=admin
|
|
GRAFANA_ADMIN_PASSWORD=
|
|
|
|
# ── 可选:Google Play 商店票据校验(不配则保持 disabled)──
|
|
STORE_VERIFIER=disabled
|
|
GOOGLE_PLAY_PACKAGE_NAME=
|
|
GOOGLE_PLAY_SERVICE_ACCOUNT_JSON=
|