Nye-TeeOff/docker-compose.yml

70 lines
1.9 KiB
YAML

services:
db:
image: postgis/postgis:15-3.4
container_name: teeoff_db
environment:
POSTGRES_USER: ${POSTGRES_USER}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
POSTGRES_DB: ${POSTGRES_DB}
ports:
- "5433:5432"
volumes:
- teeoff_db_data:/var/lib/postgresql/data
restart: unless-stopped
api:
build: ./backend
container_name: teeoff_api
environment:
DATABASE_URL: ${DATABASE_URL}
JWT_SECRET: ${JWT_SECRET}
GOOGLE_CLIENT_ID: ${GOOGLE_CLIENT_ID}
GOOGLE_CLIENT_SECRET: ${GOOGLE_CLIENT_SECRET}
PUBLIC_BASE_URL: ${PUBLIC_BASE_URL}
PUBLIC_SESSION_SECRET: ${PUBLIC_SESSION_SECRET}
PUBLIC_COMMENT_DEFAULT_STATUS: ${PUBLIC_COMMENT_DEFAULT_STATUS}
SMTP_SERVER: ${SMTP_SERVER}
SMTP_PORT: ${SMTP_PORT}
SMTP_USER: ${SMTP_USER}
SMTP_PASS: ${SMTP_PASS}
PUBLIC_FROM_EMAIL: ${PUBLIC_FROM_EMAIL}
PUBLIC_MAGIC_LINK_MAX_AGE_MINUTES: ${PUBLIC_MAGIC_LINK_MAX_AGE_MINUTES}
ports:
- "8001:8000"
volumes:
- ./backend:/app
- ./frontend/src/content:/shared/frontend-content:ro
# Denne linjen sørger for at bilder lagres direkte i frontendens public-mappe:
- ./frontend/public/media:/app/public/media
depends_on:
- db
restart: unless-stopped
worker:
build: ./backend
container_name: teeoff_worker
command: python worker.py
environment:
DATABASE_URL: ${DATABASE_URL}
volumes:
- ./backend:/app
depends_on:
- db
restart: unless-stopped
frontend:
build: ./frontend
container_name: teeoff_frontend
# NY LINJE: Tvinger produksjonsmodus for å stoppe WebSocket-feil og relasting
command: npm start
ports:
- "3000:3000"
volumes:
- ./frontend/public/uploads:/app/public/uploads
# VIKTIG: Jeg har fjernet "- ./frontend:/app" her for å sikre stabilitet
depends_on:
- api
restart: unless-stopped
volumes:
teeoff_db_data: