# PostgreSQL POSTGRES_IMAGE=postgis/postgis:17-3.5 POSTGRES_USER=shiran POSTGRES_PASSWORD=change-me-postgres-password POSTGRES_DB=ciyuan_viewfinder POSTGRES_PGDATA=/var/lib/postgresql/data/pgdata # Redis REDIS_IMAGE=redis:7-alpine REDIS_URL=redis://redis:6379/0 # MinIO / S3 MINIO_IMAGE=minio/minio:latest MINIO_ROOT_USER=minioadmin MINIO_ROOT_PASSWORD=change-me-minio-password S3_ENDPOINT=http://minio:9000 S3_ACCESS_KEY=minioadmin S3_SECRET_KEY=change-me-minio-password S3_BUCKET=ciyuan-viewfinder # Server SERVER_BASE_IMAGE=python:3.12-slim SERVER_INTERNAL_PORT=8000 PIP_INDEX_URL=https://pypi.tuna.tsinghua.edu.cn/simple PIP_TRUSTED_HOST=pypi.tuna.tsinghua.edu.cn PIP_DEFAULT_TIMEOUT=120 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 SECRET_KEY=change-me-before-production ACCESS_TOKEN_EXPIRE_MINUTES=43200 REFRESH_TOKEN_EXPIRE_DAYS=60 STORAGE_BACKEND=local LOCAL_STORAGE_PATH=/app/uploads TENCENT_MAP_KEY= LOG_LEVEL=INFO LOG_JSON=false # Frontend build ADMIN_WEB_NODE_IMAGE=node:20-alpine ADMIN_WEB_NGINX_IMAGE=nginx:1.27-alpine ADMIN_WEB_INTERNAL_PORT=80 VITE_API_BASE=/api/v1 CLIENTS_NODE_IMAGE=node:20-alpine CLIENTS_NGINX_IMAGE=nginx:1.27-alpine CLIENTS_INTERNAL_PORT=80 VITE_CLIENT_H5_API_BASE=/api/v1 VITE_CLIENT_H5_SERVER_ORIGIN= VITE_CLIENT_NATIVE_API_BASE=http://10.0.10.11:8000/api/v1 VITE_CLIENT_NATIVE_SERVER_ORIGIN=http://10.0.10.11:8000 # Nginx host ports NGINX_IMAGE=nginx:1.27-alpine NGINX_CLIENT_INTERNAL_PORT=80 NGINX_ADMIN_INTERNAL_PORT=81 NGINX_SERVER_INTERNAL_PORT=82 CLIENT_WEB_PORT=5173 ADMIN_WEB_PORT=5174 SERVER_WEB_PORT=8000