tandoor (recipes)
services:
# Service name: tandoor
# The `tandoor` service definition
tandoor:
# Name of the container
container_name: tandoor
# Image to be used for the container
image: ghcr.io/tandoorrecipes/recipes:latest
# Container restart policy
restart: unless-stopped
# Volumes to be mounted to the container
volumes:
- /mnt/scratch/docker/data/tandoor/staticfiles:/opt/recipes/staticfiles
- /mnt/scratch/docker/data/tandoor/mediafiles:/opt/recipes/mediafiles
# Ports mapping between host and container
ports:
# Mapping port 8080 of the host to port 8080 of the container
- 8080:8080
# Environment variables to be passed to the container
environment:
- SECRET_KEY=$SECRET_KEY
- DB_ENGINE=django.db.backends.postgresql
- POSTGRES_HOST=tandoor-db
- POSTGRES_PORT=5432
- POSTGRES_USER=tandoor
- POSTGRES_PASSWORD=$POSTGRES_PASS
- POSTGRES_DB=tandoordb
# Network to be used by the container
networks:
- tandoor_network
# Healthcheck configuration for the container
depends_on:
tandoor-db:
condition: service_healthy
tandoor-db:
image: postgres:15-alpine
container_name: tandoor-db
volumes:
- /mnt/scratch/docker/data/tandoor/postgresql_data:/var/lib/postgresql/data
environment:
- POSTGRES_PORT=5432
- POSTGRES_USER=tandoor
- POSTGRES_PASSWORD=$POSTGRES_PASS
- POSTGRES_DB=tandoordb
restart: unless-stopped
networks:
- tandoor_network
healthcheck:
test:
- CMD-SHELL
- pg_isready
- -d
- tandoor
interval: 10s
timeout: 5s
retries: 5
start_period: 30s
# Network definitions for the tandoor application
networks:
tandoor_network:
driver: bridge