forked from DevOps/deploy.stack
48 lines
1.9 KiB
Plaintext
48 lines
1.9 KiB
Plaintext
# ============================================================
|
||
# new-api 部署 — 环境变量模板(不含敏感信息)
|
||
# 复制为 env.cfg 后填入真实值,env.cfg 已在 .gitignore 中忽略
|
||
# ============================================================
|
||
#
|
||
# 使用方式:
|
||
# cp env.cfg.example env.cfg
|
||
# $EDITOR env.cfg # 填入真实密码/密钥后保存
|
||
# docker compose -p newapi --env-file ./env.cfg -f ./stack.yml up -d
|
||
#
|
||
# 前置:宿主机 PostgreSQL 建库建号(只需一次):
|
||
# sudo -u postgres psql -c "CREATE ROLE newapi LOGIN PASSWORD '<你的强密码>';"
|
||
# sudo -u postgres psql -c 'CREATE DATABASE new_api OWNER newapi;'
|
||
# sudo -u postgres psql -c 'GRANT ALL PRIVILEGES ON DATABASE new_api TO newapi;'
|
||
# # PG < 13 若建表报权限错,补:GRANT ALL ON SCHEMA public TO newapi;
|
||
#
|
||
# 注意:SQL_DSN / REDIS_CONN_STRING 为 URL 格式,
|
||
# 密码建议纯字母+数字,含 @ : / # 等字符时需做百分号转义
|
||
|
||
# ---------- 镜像 ----------
|
||
# new-api 版本号(与 GitHub release tag 同名;拉取失败可回退 latest)
|
||
IMAGE_TAG_VER=v1.0.0-rc.30
|
||
# 完整镜像引用
|
||
IMAGE_TAG=calciumion/new-api:${IMAGE_TAG_VER}
|
||
# Redis 镜像
|
||
REDIS_IMAGE_TAG=redis:8.2
|
||
|
||
# ---------- 数据卷 ----------
|
||
# 宿主机持久化目录,挂载到容器 /data 与 /app/logs
|
||
# 部署前手动创建:mkdir -pv /data/volumes/newapi/{data,logs}
|
||
Volumes_Path=/data/volumes/newapi
|
||
|
||
# ---------- 数据库(宿主机已有 PostgreSQL,建议 13+)----------
|
||
DB_HOST=127.0.0.1
|
||
DB_PORT=5432
|
||
DB_NAME=new_api
|
||
DB_USER=newapi
|
||
DB_PASSWORD=<your-strong-password>
|
||
|
||
# ---------- Redis(本栈自建容器,host 网络,只绑 127.0.0.1)----------
|
||
REDIS_PASSWORD=<your-strong-password>
|
||
|
||
# ---------- new-api 应用 ----------
|
||
# 节点名,用于审计日志标识节点;多节点部署时各节点需不同
|
||
NODE_NAME=newapi-node-1
|
||
# 会话密钥:单机留空(自动生成并持久化);多机部署必须设为同一随机串
|
||
SESSION_SECRET=
|