# PostgreSQL 数据库配置 # PostGIS 镜像地址,可改为私有镜像仓库地址。 POSTGRES_IMAGE=postgis/postgis:17-3.5 # PostgreSQL 用户名。 POSTGRES_USER=shiran # PostgreSQL 密码,生产环境必须修改。 POSTGRES_PASSWORD=change-me-postgres-password # PostgreSQL 数据库名。 POSTGRES_DB=ciyuan_viewfinder # 容器内 PostgreSQL 数据目录。 POSTGRES_PGDATA=/var/lib/postgresql/data/pgdata # Redis 配置 # Redis 镜像地址,可改为私有镜像仓库地址。 REDIS_IMAGE=redis:7-alpine # 后端连接 Redis 的地址,Docker Compose 内使用服务名 redis。 REDIS_URL=redis://redis:6379/0 # MinIO / S3 对象存储配置 # MinIO 镜像地址,可改为私有镜像仓库地址。 MINIO_IMAGE=minio/minio:latest # MinIO 管理员用户名。 MINIO_ROOT_USER=minioadmin # MinIO 管理员密码,生产环境必须修改。 MINIO_ROOT_PASSWORD=change-me-minio-password # S3 兼容服务地址,Docker Compose 内使用服务名 minio。 S3_ENDPOINT=http://minio:9000 # S3 访问密钥。 S3_ACCESS_KEY=minioadmin # S3 访问密钥密码,通常与 MinIO 管理员密码保持一致。 S3_SECRET_KEY=change-me-minio-password # S3 存储桶名称。 S3_BUCKET=ciyuan-viewfinder # S3 区域,MinIO 可留空。 S3_REGION= # S3 公网访问地址,留空时由后端按默认规则生成。 S3_PUBLIC_URL= # 后端镜像与运行配置 # 后端 Dockerfile 基础镜像。 SERVER_BASE_IMAGE=python:3.12-slim # 后端容器内部监听端口。 SERVER_INTERNAL_PORT=8000 # pip 包下载源,网络不稳定时可改为内网源。 PIP_INDEX_URL=https://pypi.tuna.tsinghua.edu.cn/simple # pip 信任主机,通常与 PIP_INDEX_URL 的域名一致。 PIP_TRUSTED_HOST=pypi.tuna.tsinghua.edu.cn # pip 下载超时时间,单位秒。 PIP_DEFAULT_TIMEOUT=120 # 后端异步数据库连接串,Docker Compose 内使用服务名 postgres。 DATABASE_URL=postgresql+asyncpg://shiran:change-me-postgres-password@postgres:5432/ciyuan_viewfinder # 后端同步数据库连接串,用于迁移等同步场景。 DATABASE_URL_SYNC=postgresql://shiran:change-me-postgres-password@postgres:5432/ciyuan_viewfinder # JWT 签名密钥,生产环境必须改成高强度随机字符串。 SECRET_KEY=change-me-before-production # 访问令牌有效期,单位分钟。 ACCESS_TOKEN_EXPIRE_MINUTES=43200 # 刷新令牌有效期,单位天。 REFRESH_TOKEN_EXPIRE_DAYS=60 # 存储后端类型,可选 local 或 s3。 STORAGE_BACKEND=local # 本地上传文件在后端容器内的保存路径。 LOCAL_STORAGE_PATH=/app/uploads # 腾讯地图 API Key,没有地图相关能力时可留空。 TENCENT_MAP_KEY= # Sentry DSN,留空表示不启用错误上报。 SENTRY_DSN= # 后端日志级别。 LOG_LEVEL=INFO # 是否输出 JSON 格式日志。 LOG_JSON=false # 是否在后端启动时自动创建默认管理员。 DEFAULT_ADMIN_ENABLED=true # 默认管理员手机号,可用于登录管理端。 DEFAULT_ADMIN_PHONE=13900000001 # 默认管理员邮箱,也可用于登录管理端。 DEFAULT_ADMIN_EMAIL=admin@ciyuan.local # 默认管理员密码,生产环境必须修改。 DEFAULT_ADMIN_PASSWORD=admin123456 # 默认管理员昵称。 DEFAULT_ADMIN_NICKNAME=系统管理员 # 启动时是否把已有默认管理员密码同步为 DEFAULT_ADMIN_PASSWORD。 DEFAULT_ADMIN_SYNC_PASSWORD=true # 管理端前端构建配置 # 管理端构建阶段 Node 基础镜像。 ADMIN_WEB_NODE_IMAGE=node:20-alpine # 管理端运行阶段 Nginx 基础镜像。 ADMIN_WEB_NGINX_IMAGE=nginx:1.27-alpine # 管理端容器内部监听端口。 ADMIN_WEB_INTERNAL_PORT=80 # 管理端 API 基础路径,浏览器侧使用相对路径走当前域名反代。 VITE_API_BASE=/api/v1 # 客户端前端构建配置 # 客户端构建阶段 Node 基础镜像。 CLIENTS_NODE_IMAGE=node:20-alpine # 客户端运行阶段 Nginx 基础镜像。 CLIENTS_NGINX_IMAGE=nginx:1.27-alpine # 客户端容器内部监听端口。 CLIENTS_INTERNAL_PORT=80 # H5 客户端 API 基础路径。 VITE_CLIENT_H5_API_BASE=/api/v1 # H5 客户端资源服务域名,留空表示使用相对路径。 VITE_CLIENT_H5_SERVER_ORIGIN= # 非 H5 客户端 API 基础路径。 VITE_CLIENT_NATIVE_API_BASE=/api/v1 # 非 H5 客户端资源服务域名,留空表示使用相对路径。 VITE_CLIENT_NATIVE_SERVER_ORIGIN= # 外层 Nginx 网关配置 # 外层 Nginx 镜像地址,可改为私有镜像仓库地址。 NGINX_IMAGE=nginx:1.27-alpine # 外层 Nginx 客户端入口内部监听端口。 NGINX_CLIENT_INTERNAL_PORT=80 # 外层 Nginx 管理端入口内部监听端口。 NGINX_ADMIN_INTERNAL_PORT=81 # 客户端入口映射到宿主机的端口。 CLIENT_WEB_PORT=5173 # 管理端入口映射到宿主机的端口。 ADMIN_WEB_PORT=5174