完善 Docker 部署骨架并整理开源发布资料
- 调整 Dockerfile 与入口脚本,拆分应用、MySQL、Redis 的部署职责 - 新增 docker-compose、docker ignore 与 Docker 环境变量示例 - 重写 README 并补充 Docker 部署说明与第三方资产说明 - 将后台示例账号与 webhook token 改为安全占位值,移除弱口令默认兜底
This commit is contained in:
40
Dockerfile
40
Dockerfile
@@ -5,10 +5,20 @@ ENV DEBIAN_FRONTEND=noninteractive \
|
||||
PYTHONUNBUFFERED=1 \
|
||||
TZ=Asia/Shanghai
|
||||
|
||||
# 仅保留 ABOT 运行所需的系统依赖:
|
||||
# 1. 不再在应用镜像中内置 MariaDB / Redis,避免单容器承载过多职责;
|
||||
# 2. 生产部署交由 docker-compose 管理独立基础设施服务;
|
||||
# 3. 补充常用字体依赖,降低图片生成与渲染场景中的缺字风险。
|
||||
RUN apt-get update && apt-get install -y --no-install-recommends \
|
||||
ca-certificates curl bash tzdata \
|
||||
mariadb-server redis-server \
|
||||
ffmpeg libgl1 libglib2.0-0 \
|
||||
ca-certificates \
|
||||
curl \
|
||||
bash \
|
||||
tzdata \
|
||||
ffmpeg \
|
||||
libgl1 \
|
||||
libglib2.0-0 \
|
||||
fonts-noto-cjk \
|
||||
fonts-noto-color-emoji \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
WORKDIR /app
|
||||
@@ -21,15 +31,21 @@ COPY . /app
|
||||
COPY docker-entrypoint.sh /usr/local/bin/docker-entrypoint.sh
|
||||
RUN chmod +x /usr/local/bin/docker-entrypoint.sh
|
||||
|
||||
ENV DB_HOST=127.0.0.1 \
|
||||
DB_PORT=3306 \
|
||||
DB_NAME=abot \
|
||||
DB_USER=root \
|
||||
DB_PASSWORD= \
|
||||
REDIS_HOST=127.0.0.1 \
|
||||
REDIS_PORT=6379 \
|
||||
REDIS_DB=0 \
|
||||
REDIS_PASSWORD= \
|
||||
# 统一使用 ABOT_* 命名作为默认环境变量前缀:
|
||||
# 1. 与 config.example.yaml 保持一致,降低新用户理解成本;
|
||||
# 2. WECHAT_* 继续用于生成 wechat_ipad/config.toml;
|
||||
# 3. 默认值仅用于容器首次启动兜底,正式环境建议在 .env 中显式配置。
|
||||
ENV ABOT_ENVIRONMENT=production \
|
||||
ABOT_PLUGIN_DIR=plugins \
|
||||
ABOT_DB_HOST=127.0.0.1 \
|
||||
ABOT_DB_PORT=3306 \
|
||||
ABOT_DB_NAME=message_archive \
|
||||
ABOT_DB_USER=root \
|
||||
ABOT_DB_PASSWORD= \
|
||||
ABOT_REDIS_HOST=127.0.0.1 \
|
||||
ABOT_REDIS_PORT=6379 \
|
||||
ABOT_REDIS_DB=0 \
|
||||
ABOT_REDIS_PASSWORD= \
|
||||
WECHAT_SERVER_URL=http://127.0.0.1:8059/ \
|
||||
WECHAT_SERVER_IP=127.0.0.1 \
|
||||
WECHAT_SERVER_PORT=8059 \
|
||||
|
||||
Reference in New Issue
Block a user