services: django-app: image: wtukatyr/django-example-app:latest container_name: django-app ports: - "8989:8000" depends_on: - db volumes: - ./mysite:/app/mysite - ./polls:/app/polls environment: DATABASE_NAME: ${DATABASE_NAME} DATABASE_USERNAME: ${DATABASE_USERNAME} DATABASE_HOST: ${DATABASE_HOST} DATABASE_PASSWORD: ${DATABASE_PASSWORD} DATABASE_PORT: ${DATABASE_PORT} env_file: - .env networks: - django_app_network - proxy_common db: image: postgres:14 restart: always # set shared memory limit when using docker compose shm_size: 128mb # or set shared memory limit when deploy via swarm stack #volumes: # - type: tmpfs # target: /dev/shm # tmpfs: # size: 134217728 # 128*2^20 bytes = 128Mb container_name: postgres volumes: - pg-data:/var/lib/postgresql/data environment: POSTGRES_DB: ${DATABASE_NAME} POSTGRES_USER: ${DATABASE_USERNAME} POSTGRES_PASSWORD: ${DATABASE_PASSWORD} POSTGRES_PORT: ${DATABASE_PORT} env_file: - .env networks: - django_app_network - proxy_common volumes: pg-data: networks: django_app_network: name: django_app_network proxy_common: external: true