78 lines
No EOL
1.8 KiB
YAML
78 lines
No EOL
1.8 KiB
YAML
version: '3.5'
|
|
|
|
services:
|
|
penpot-frontend:
|
|
image: 'penpotapp/frontend:latest'
|
|
restart: always
|
|
volumes:
|
|
- penpot_assets_data:/opt/data
|
|
env_file:
|
|
- config.env
|
|
depends_on:
|
|
- penpot-backend
|
|
- penpot-exporter
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.http.routers.penpot-secure.entrypoints=https"
|
|
- "traefik.http.routers.penpot-secure.rule=Host(`penpot.mrdev023.fr`)"
|
|
- "traefik.http.routers.penpot-secure.tls=true"
|
|
- "traefik.http.routers.penpot-secure.tls.certresolver=sslResolver"
|
|
# - "traefik.http.routers.whoami-secure.service=whoami"
|
|
# - "traefik.http.services.whoami.loadbalancer.server.port=9002"
|
|
- "traefik.docker.network=proxy"
|
|
networks:
|
|
- internal
|
|
- proxy
|
|
|
|
penpot-backend:
|
|
image: 'penpotapp/backend:latest'
|
|
restart: always
|
|
volumes:
|
|
- penpot_assets_data:/opt/data
|
|
depends_on:
|
|
- penpot-postgres
|
|
- penpot-redis
|
|
env_file:
|
|
- config.env
|
|
networks:
|
|
- internal
|
|
|
|
penpot-exporter:
|
|
image: 'penpotapp/exporter:latest'
|
|
restart: always
|
|
env_file:
|
|
- config.env
|
|
environment:
|
|
# Don't touch it; this uses internal docker network to
|
|
# communicate with the frontend.
|
|
- PENPOT_PUBLIC_URI=http://penpot-frontend
|
|
networks:
|
|
- internal
|
|
|
|
penpot-postgres:
|
|
image: 'postgres:14'
|
|
restart: always
|
|
environment:
|
|
- POSTGRES_INITDB_ARGS=--data-checksums
|
|
- POSTGRES_DB=penpot
|
|
- POSTGRES_USER=penpot
|
|
- POSTGRES_PASSWORD=penpot
|
|
volumes:
|
|
- penpot_postgres_data:/var/lib/postgresql/data
|
|
networks:
|
|
- internal
|
|
|
|
penpot-redis:
|
|
image: redis:7
|
|
restart: always
|
|
networks:
|
|
- internal
|
|
|
|
volumes:
|
|
penpot_postgres_data:
|
|
penpot_assets_data:
|
|
|
|
networks:
|
|
internal:
|
|
proxy:
|
|
external: true |