You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
39 lines
1.2 KiB
39 lines
1.2 KiB
services: |
|
db: |
|
image: postgres:16-alpine |
|
environment: |
|
POSTGRES_USER: ${POSTGRES_USER:-edu} |
|
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-edu} |
|
POSTGRES_DB: ${POSTGRES_DB:-edu_helper} |
|
volumes: |
|
- pgdata:/var/lib/postgresql/data |
|
healthcheck: |
|
test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_USER:-edu} -d ${POSTGRES_DB:-edu_helper}"] |
|
interval: 3s |
|
timeout: 5s |
|
retries: 10 |
|
|
|
app: |
|
build: . |
|
ports: |
|
- "${APP_PORT:-3107}:3107" |
|
environment: |
|
NODE_ENV: production |
|
PORT: "3107" |
|
DATABASE_URL: postgresql://${POSTGRES_USER:-edu}:${POSTGRES_PASSWORD:-edu}@db:5432/${POSTGRES_DB:-edu_helper} |
|
JWT_SECRET: ${JWT_SECRET:?Set JWT_SECRET in .env} |
|
SEED_TUTOR_USERNAME: ${SEED_TUTOR_USERNAME:-alexey} |
|
SEED_STUDENT_USERNAME: ${SEED_STUDENT_USERNAME:-konstantin} |
|
SEED_TUTOR_PASSWORD: ${SEED_TUTOR_PASSWORD:?Set SEED_TUTOR_PASSWORD in .env} |
|
SEED_STUDENT_PASSWORD: ${SEED_STUDENT_PASSWORD:?Set SEED_STUDENT_PASSWORD in .env} |
|
DEEPSEEK_API_KEY: ${DEEPSEEK_API_KEY:-} |
|
COOKIE_SECURE: ${COOKIE_SECURE:-false} |
|
depends_on: |
|
db: |
|
condition: service_healthy |
|
volumes: |
|
- uploads:/app/uploads |
|
|
|
volumes: |
|
pgdata: |
|
uploads:
|
|
|