services: web: build: . command: gunicorn website.wsgi:application depends_on: - db environment: ALLOWED_HOSTS: ${NGINX_HOSTNAME} PYTHONDONTWRITEBYTECODE: 1 PYTHONUNBUFFERED: 1 DJANGO_SETTINGS_MODULE: ${DJANGO_SETTINGS_MODULE} VIRTUAL_HOST: localhost #VIRTUAL_PORT: 8000 restart: unless-stopped volumes: - static_volume:/app/static - media_volume:/app/media db: image: postgres:18 environment: POSTGRES_DB: ${POSTGRES_DBNAME} POSTGRES_USER: ${POSTGRES_USER} POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} volumes: - postgres_data:/var/lib/postgresql restart: unless-stopped adminer: image: adminer depends_on: - db restart: always ports: - 8080:8080 proxy: image: nginx:stable volumes: - ./.nginx/.templates:/etc/nginx/templates - static_volume:/app/static:ro - media_volume:/app/media:ro restart: unless-stopped ports: - 80:80 - 443:443 environment: - NGINX_HOSTNAME=${NGINX_HOSTNAME} - NGINX_PORT=80 - NGINX_SSL_PORT=443 depends_on: - web test: build: . command: python manage.py test depends_on: - db profiles: - test volumes: postgres_data: static_volume: media_volume: