快速上手#

部署#

Qzone3TG 支持且仅支持 docker 部署。当然,若您是 Python 开发者,您可以直接克隆本仓库并安装软件包。

  1. 确保您的服务器上安装了 docker,确保能够使用 docker-compose

  2. Qzone3TG 支持文件配置和环境变量配置:文件配置模板docker-compose 模板

  3. 按照下文提供的范例编辑您的配置文件,配置的具体含义见 文档

  4. 运行:docker-compose -f docker/my-compose.yml up -d

配置#

使用文件配置#

由于 yaml 具有良好的可读性,我们目前支持且仅支持 yaml 配置。

最小配置文件:

# min config
qzone: { qq: 123 }
bot: { admin: 456 }

最大(最全)配置文件:

# max config
log:
  level: "DEBUG"
  format: "%(message)s"
  style: "%"
  datefmt: "%Y %b %d %H:%M:%S"
  debug_status_interval: 3600
  conf: config/log.yml

qzone:
  qq: 123
  dayspac: 1
  block: [2333, 1234]
  block_self: false
  qr_config:
    max_refresh_times: 6
    poll_freq: 3.0
  up_config:
    vcode_timeout: 60

bot:
  admin: 456
  storage:
    database: data/123.db
    keepdays: 180
  init_args:
    destination: https://example.com/prefix
    port: 8443
    max_connections: 10
    bootstrap_retries: -1
    drop_pending_updates: True
  network:
    proxy: socks5://localhost:443
  auto_start: True

警告

您下载的 yaml 模板既包含最大配置,又包含最小配置,之间用 --- 分割。这是出于展示和简化文件的目的。 您编辑完成的配置文件不应当包含分割线 ---

提示

当您更改了配置文件时,需要 重启 容器以应用更改。

使用环境变量配置#

Qzone3TG 支持从环境变量中读取配置。docker-compose 的配置文件可以很方便地配置容器环境变量。 如果您的配置项 较少,推荐使用这种写法。有关 docker-compose 文件的语法,请参考 docker compose 文档

备注

如果使用 docker-compose 中的环境变量来配置 Qzone3TG,当您更改配置时,需要 重新创建 容器以应用更改。

services:
  qzone:
    container_name: qzone
    image: ghcr.io/aioqzone/qzone3tg:latest-beta
    environment:
      # ${xxx}表示环境变量。您可以直接将变量替换为字面值
      # 也可以在 .env 文件中定义这些变量,如
      # xxx=123
      password: ${PASSWD}
      token: ${TOKEN}
      qzone.qq: ${UIN}
      bot.admin: ${ADMIN}
      bot.storage.database: data/${UIN}.db
      # bot.network.proxy: socks5://host.docker.internal:7890
    # network_mode: host
    expose: [80]
    volumes:
      - /var/log/Qzone2TG:/app/log
      - ./config:/app/config:ro
      - qzone-data:/app/data

volumes:
  qzone-data: