services: backend: build: context: ./backend restart: unless-stopped env_file: - ./backend/.env environment: # SQLite ファイルと知識ベースを永続ボリュームに置く(.env の値を上書き) DATABASE_URL: sqlite:////app/data/playchat.db # コンテナのタイムゾーン。未設定だとUTCになり、天気通知のcron時刻・深夜スキップ判定・ # 「明日」の日付計算がすべて9時間ずれる。プロセス起動前に効かせる必要があるため # .env ではなくここで指定する(後から os.environ に入れても libc には反映されない)。 TZ: Asia/Tokyo volumes: - backend_data:/app/data - backend_knowledge_base:/app/knowledge_base expose: - "8000" frontend: build: context: ./frontend restart: unless-stopped depends_on: - backend expose: - "80" caddy: image: caddy:latest restart: unless-stopped ports: - "80:80" - "443:443" volumes: - ./Caddyfile:/etc/caddy/Caddyfile - caddy_data:/data - caddy_config:/config depends_on: - frontend volumes: backend_data: backend_knowledge_base: caddy_data: caddy_config: