2026-06-18 17:18:23 +08:00
|
|
|
# Phase 0 单 service:FastAPI 启动后既跑 API 又托管前端 dist。
|
|
|
|
|
# 见 ADR-17 / §8.1。
|
|
|
|
|
services:
|
|
|
|
|
app:
|
|
|
|
|
build:
|
|
|
|
|
context: .
|
|
|
|
|
dockerfile: Dockerfile
|
2026-06-26 11:06:59 +08:00
|
|
|
args:
|
|
|
|
|
BACKEND_EXTRAS: ${BACKEND_EXTRAS:-}
|
2026-07-14 11:23:33 +08:00
|
|
|
CODEX_CLI_VERSION: ${CODEX_CLI_VERSION:-0.144.3}
|
2026-06-23 23:43:14 +08:00
|
|
|
container_name: TickFlow_Stock_Panel
|
2026-06-18 17:18:23 +08:00
|
|
|
ports:
|
2026-08-05 17:56:27 +08:00
|
|
|
- "${HOST:-0.0.0.0}:${PORT:-3018}:3018"
|
2026-07-14 17:33:55 +08:00
|
|
|
extra_hosts:
|
|
|
|
|
- "host.docker.internal:host-gateway"
|
2026-06-18 17:18:23 +08:00
|
|
|
env_file:
|
|
|
|
|
- .env
|
2026-07-03 10:46:26 +08:00
|
|
|
environment:
|
|
|
|
|
# 强制固定为容器内绝对路径, 防止 .env 里的 DATA_DIR=./data(开发模式用)
|
|
|
|
|
# 被 env_file 原样传入容器后按错误的相对路径解析, 写到未挂载卷的目录,
|
|
|
|
|
# 导致每次 up --build 重建容器都丢数据。environment 优先级高于 env_file,
|
|
|
|
|
# 无论 .env 怎么写这里都以容器路径为准。
|
|
|
|
|
- DATA_DIR=/app/data
|
2026-07-14 11:50:04 +08:00
|
|
|
# 将主机 Codex Desktop 的 loopback local-access 端点映射到 Docker host gateway。
|
|
|
|
|
- CODEX_DOCKER_HOST=host.docker.internal
|
2026-06-18 17:18:23 +08:00
|
|
|
volumes:
|
|
|
|
|
- ./data:/app/data
|
|
|
|
|
- ./tiers.yaml:/app/tiers.yaml:ro
|
2026-08-05 17:56:27 +08:00
|
|
|
# 保留原始 dotenv 值供首次密码初始化读取,避免 Compose 展开密码中的 $VAR。
|
|
|
|
|
- ./.env:/app/.env:ro
|
2026-07-14 11:23:33 +08:00
|
|
|
# 复用主机 Codex 登录态;后端只读后复制到单次请求的临时 CODEX_HOME。
|
2026-07-14 18:12:48 +08:00
|
|
|
# Windows PowerShell/CMD 下 HOME 常未设置, 可通过 .env 里 CODEX_HOME_HOST 覆盖。
|
|
|
|
|
- ${CODEX_HOME_HOST:-${HOME}/.codex}:/root/.codex:ro
|
2026-06-18 17:18:23 +08:00
|
|
|
restart: unless-stopped
|