services: mysql: image: mysql:8.0 container_name: t3fap-mysql restart: always command: - --character-set-server=utf8mb4 - --collation-server=utf8mb4_0900_ai_ci environment: MYSQL_DATABASE: t3mt_next MYSQL_USER: t3mt MYSQL_PASSWORD: change_me MYSQL_ROOT_PASSWORD: change_root_me TZ: Asia/Shanghai volumes: - ./mysql-data:/var/lib/mysql healthcheck: test: [ "CMD-SHELL", "mysqladmin ping -h 127.0.0.1 -uroot -p\"$$MYSQL_ROOT_PASSWORD\" --silent", ] interval: 10s timeout: 5s retries: 12 start_period: 30s networks: - t3fap_net t3fap: image: ghcr.io/qq85423296/t3fap container_name: t3fap restart: always depends_on: mysql: condition: service_healthy ports: - "8521:8521" environment: TZ: Asia/Shanghai T3MT_ENV: production T3MT_LOG_LEVEL: INFO T3MT_PUBLIC_BASE_URL: http://127.0.0.1:8521 T3MT_DATABASE_URL: mysql+pymysql://t3mt:change_me@mysql:3306/t3mt_next?charset=utf8mb4 T3MT_ENABLE_QQBOT_GATEWAY: "0" T3MT_QQBOT_GATEWAY_RETRY_SECONDS: "15" volumes: - ./logs:/app/storage/logs - ./packages:/app/storage/packages - ./runtime:/app/storage/runtime - ./downloads:/app/backend/downloads security_opt: - apparmor:unconfined networks: - t3fap_net networks: t3fap_net: driver: bridge