86 lines
1.8 KiB
YAML
86 lines
1.8 KiB
YAML
version: '3.4'
|
|
|
|
services:
|
|
frontend:
|
|
image: 'hkotel/mealie:frontend-v1.0.0beta-4'
|
|
|
|
deploy:
|
|
mode: 'replicated'
|
|
replicas: 1
|
|
placement:
|
|
constraints:
|
|
- 'node.labels.class.mealie==true'
|
|
labels:
|
|
- 'traefik.enable=true'
|
|
- 'traefik.http.routers.mealie-frontend.rule=Host(`cook.rustybever.be`)'
|
|
- 'traefik.http.routers.mealie-frontend.tls=true'
|
|
- 'traefik.http.routers.mealie-frontend.tls.certresolver=letsEncrypt'
|
|
- 'traefik.http.services.mealie-frontend.loadbalancer.server.port=3000'
|
|
|
|
environment:
|
|
API_URL: 'http://api:9000'
|
|
ALLOW_SIGNUP: 'false'
|
|
networks:
|
|
- 'default'
|
|
- 'public'
|
|
volumes:
|
|
- 'data:/app/data'
|
|
|
|
api:
|
|
image: 'hkotel/mealie:api-v1.0.0beta-4'
|
|
|
|
deploy:
|
|
mode: 'replicated'
|
|
replicas: 1
|
|
placement:
|
|
constraints:
|
|
- 'node.labels.class.mealie==true'
|
|
|
|
environment:
|
|
# Server
|
|
PUID: 22
|
|
PGID: 22
|
|
BASE_URL: 'https://cook.rustybever.be'
|
|
TZ: 'Europe/Brussels'
|
|
|
|
# Database
|
|
DB_ENGINE: 'postgres'
|
|
POSTGRES_SERVER: 'db'
|
|
POSTGRES_PORT: 5432
|
|
POSTGRES_DB: 'mealie'
|
|
POSTGRES_USER: 'mealie'
|
|
POSTGRES_PASSWORD: 'mealie'
|
|
|
|
# Other
|
|
ALLOW_SIGNUP: 'false'
|
|
DEFAULT_EMAIL:
|
|
MAX_WORKERS: 1
|
|
WEB_CONCURRENCY: 1
|
|
volumes:
|
|
- 'data:/app/data'
|
|
|
|
db:
|
|
image: 'postgres:14.5'
|
|
restart: 'always'
|
|
|
|
deploy:
|
|
mode: 'replicated'
|
|
replicas: 1
|
|
placement:
|
|
constraints:
|
|
- 'node.labels.class.mealie==true'
|
|
|
|
environment:
|
|
POSTGRES_USER: 'mealie'
|
|
POSTGRES_PASSWORD: 'mealie'
|
|
volumes:
|
|
- 'db-data:/var/lib/postgresql/data'
|
|
|
|
networks:
|
|
public:
|
|
external: true
|
|
|
|
volumes:
|
|
data:
|
|
db-data:
|