Ctrl K
ComunidadGuías…

docker-compose.yml

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
name: diceframe

services:
  web:
    build:
      context: .
    image: ghcr.io/diceframe/diceframe:latest
    container_name: diceframe-web
    ports:
      - "${DICEFRAME_HTTP_PORT:-9876}:9876"
      # 启用 lets_encrypt 时还要发布 ACME 验证端口。http-01 校验方只访问公网 80,
      # 叠加文件固定把宿主机 80 映射到容器内监听的 TRPG_TLS_ACME_CHALLENGE_PORT
      # (默认 80)—— 若把宿主机侧也配成 8080,Let's Encrypt 不会来访问:
      #   docker compose -f docker-compose.yml -f docker-compose.acme-challenge.yml up -d
    extra_hosts:
      - "host.docker.internal:host-gateway"
    environment:
      TRPG_WEB_HOST: "0.0.0.0"
      TRPG_WEB_PORT: "9876"
      # 额外监听地址(例如 IPv6 的 ::)与附加 HTTP/HTTPS 端口。
      # 注意:容器里监听了端口还需要在 ports 里映射出来,见
      # docker-compose.extra-http-port.yml / docker-compose.extra-https-port.yml
      # 与 .env.example 的说明。
      TRPG_WEB_HOSTS: "${TRPG_WEB_HOSTS:-}"
      TRPG_WEB_HTTP_PORT: "${TRPG_WEB_HTTP_PORT:-}"
      TRPG_WEB_HTTPS_PORT: "${TRPG_WEB_HTTPS_PORT:-}"
      # TLS 设置。Compose 的 .env 只用于变量替换,不会自动传进容器,所以这里
      # 必须显式透传,否则用户在 .env 里写 TRPG_TLS_MODE 是不生效的。
      # TRPG_TLS_CERT_FILE / TRPG_TLS_KEY_FILE 属于未开放的预留项,故意不透传。
      TRPG_TLS_MODE: "${TRPG_TLS_MODE:-}"
      TRPG_TLS_IDENTIFIER_TYPE: "${TRPG_TLS_IDENTIFIER_TYPE:-}"
      TRPG_TLS_IDENTIFIER: "${TRPG_TLS_IDENTIFIER:-}"
      TRPG_TLS_CONTACT_EMAIL: "${TRPG_TLS_CONTACT_EMAIL:-}"
      TRPG_TLS_CHALLENGE_TYPE: "${TRPG_TLS_CHALLENGE_TYPE:-}"
      TRPG_TLS_ACME_CHALLENGE_PORT: "${TRPG_TLS_ACME_CHALLENGE_PORT:-}"
      TRPG_DATA_DIR: "/app/data"
      # The image already defaults to Asia/Shanghai; set TZ in .env to change it.
      TZ: "${TZ:-Asia/Shanghai}"

      TRPG_ACCESS_TOKEN: "${TRPG_ACCESS_TOKEN:-}"
      TRPG_WEB_CORS_ORIGINS: "${TRPG_WEB_CORS_ORIGINS:-}"
      TRPG_PROXY_URL: "${TRPG_PROXY_URL:-}"

      TRPG_BOT_TOKEN: "${TRPG_BOT_TOKEN:-}"
      NAPCAT_HOST: "${NAPCAT_HOST:-}"
      NAPCAT_PORT: "${NAPCAT_PORT:-}"
      NAPCAT_TOKEN: "${NAPCAT_TOKEN:-}"
    volumes:
      - ./data:/app/data
      - ./plugins:/app/plugins
    restart: unless-stopped