| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- version: '3.8'
- services:
- db:
- image: postgres:16-alpine
- container_name: liaowang-db
- environment:
- POSTGRES_DB: ${DB_NAME:-liaowang_db}
- POSTGRES_USER: ${DB_USER:-liaowang}
- POSTGRES_PASSWORD: ${DB_PASSWORD:-liaowang_secret}
- ports:
- - "5433:5432"
- volumes:
- - postgres_data:/var/lib/postgresql/data
- healthcheck:
- test: ["CMD-SHELL", "pg_isready -U ${DB_USER:-liaowang}"]
- interval: 10s
- timeout: 5s
- retries: 5
- web:
- build: .
- container_name: liaowang-web
- ports:
- - "5000:5000"
- environment:
- - DB_HOST=${DB_HOST}
- - DB_PORT=${DB_PORT:-5432}
- - DB_USER=${DB_USER}
- - DB_PASSWORD=${DB_PASSWORD}
- - DB_NAME=${DB_NAME}
- - SECRET_KEY=${SECRET_KEY:-change-me-to-a-random-secret}
- - JWT_SECRET_KEY=${JWT_SECRET_KEY:-jwt-secret-change-me-to-random-string}
- - SSO_BASE_URL=${SSO_BASE_URL:-http://192.168.92.61:8200}
- - SSO_CLIENT_ID=${SSO_CLIENT_ID}
- - SSO_CLIENT_SECRET=${SSO_CLIENT_SECRET}
- - SSO_REDIRECT_URI=${SSO_REDIRECT_URI:-http://localhost:5000/auth/callback}
- - SSO_FRONTEND_URL=${SSO_FRONTEND_URL:-http://localhost:5000}
- - SSO_SCOPE=${SSO_SCOPE:-email}
- - SSO_LOGOUT_REDIRECT_URL=${SSO_LOGOUT_REDIRECT_URL:-http://192.168.92.61:9200/login}
- - SAMPLE_CENTER_BASE_URL=${SAMPLE_CENTER_BASE_URL:-http://192.168.92.61}
- - SAMPLE_CENTER_APP_ID=${SAMPLE_CENTER_APP_ID}
- - SAMPLE_CENTER_APP_SECRET=${SAMPLE_CENTER_APP_SECRET}
- env_file:
- - .env
- restart: unless-stopped
- depends_on:
- db:
- condition: service_healthy
- # 健康检查
- healthcheck:
- test: ["CMD", "curl", "-f", "http://localhost:5000"]
- interval: 30s
- timeout: 10s
- retries: 3
- start_period: 15s
- volumes:
- postgres_data:
|