Q2TG/docker-compose.yaml

74 lines
2.2 KiB
YAML

version: "3.8"
volumes:
postgresql:
zinc-data:
q2tg:
services:
# 如果有现成的 Postgresql 实例,可以删除这一小节
postgres:
image: postgres:14-alpine
restart: unless-stopped
environment:
POSTGRES_DB: db_name
POSTGRES_USER: user
POSTGRES_PASSWORD: password
volumes:
- postgresql:/var/lib/postgresql/data
zinclabs:
volumes:
- 'zinc-data:/data'
environment:
- ZINC_DATA_PATH=/data
- ZINC_FIRST_ADMIN_USER=admin
- ZINC_FIRST_ADMIN_PASSWORD=password
- ZINC_PLUGIN_GSE_ENABLE=true
- ZINC_PLUGIN_GSE_DICT_EMBED=big
container_name: zincsearch
image: 'public.ecr.aws/zinclabs/zinc:latest'
restart: unless-stopped
sign:
image: xzhouqd/qsign:core-1.1.9
restart: unless-stopped
environment:
# 需要与下方的 SIGN_VER 同步
# 配置请参考 https://hub.docker.com/r/xzhouqd/qsign
- BASE_PATH=/srv/qsign/qsign/txlib/8.9.71
q2tg:
image: ghcr.io/nofated095/q2tg:rainbowcat
container_name: main_q2tg
restart: unless-stopped
depends_on:
- postgres
- zinclabs
- sign
volumes:
- q2tg:/app/data
- /var/run/docker.sock:/var/run/docker.sock
environment:
- TG_API_ID=
- TG_API_HASH=
- TG_BOT_TOKEN=
- DATABASE_URL=postgres://user:password@postgres/db_name
- CRV_API=
- CRV_KEY=
- ZINC_URL=http://zinclabs:4080
- ZINC_USERNAME=admin
- ZINC_PASSWORD=password
- SIGN_API=http://sign:8080/sign?key=114514
- SIGN_VER=8.9.71 # 与上方 sign 容器的配置同步
- TG_CONNECTION=tcp # 连接 Telegram 的方式,也可以改成 websocket
# 要关闭文件上传提示,请取消注释以下变量 https://github.com/clansty/Q2TG/issues/153
#- DISABLE_FILE_UPLOAD_TIP=1
# 要支持转发时自动识别语音,请设置以下参数
- BAIDU_APP_ID=
- BAIDU_API_KEY=
- BAIDU_SECRET_KEY=
# 如果需要通过代理联网,那么设置下面两个变量
#- PROXY_IP=
#- PROXY_PORT=
# 代理联网认证,有需要请修改下面两个变量
#- PROXY_USERNAME=
#- PROXY_PASSWORD=