umbrel-apps/penpot/docker-compose.yml
2024-10-13 22:49:13 +10:00

68 lines
2.5 KiB
YAML

version: "3.7"
services:
app_proxy:
environment:
APP_HOST: penpot_penpot-frontend_1
APP_PORT: 80
# Can consider disabling auth all together. Penpot has its own auth system.
PROXY_AUTH_WHITELIST: "/api/*"
penpot-frontend:
image: penpotapp/frontend:2.2.0@sha256:b725df199487d88d50bb96716fd50d39621c75549b12862bcc3ea68537ef1b7e
volumes:
- ${APP_DATA_DIR}/data/assets:/opt/data/assets
environment:
- PENPOT_FLAGS=enable-registration enable-login-with-password
depends_on:
- penpot-backend
- penpot-exporter
restart: on-failure
penpot-backend:
image: penpotapp/backend:2.2.0@sha256:821c642580ed1107ea8ef2a951bfefcfbcee56a4a78559ebdb941249f1e9a3a6
# user 1000:1000 to avoid permission issues when importing libraries and templates
user: "1000:1000"
volumes:
- ${APP_DATA_DIR}/data/assets:/opt/data/assets
environment:
- PENPOT_FLAGS=enable-registration enable-login-with-password disable-email-verification disable-smtp enable-prepl-server disable-secure-session-cookies
- PENPOT_DATABASE_URI=postgresql://penpot-postgres/penpot
- PENPOT_DATABASE_USERNAME=penpot
- PENPOT_DATABASE_PASSWORD=penpot
- PENPOT_REDIS_URI=redis://penpot-redis/0
- PENPOT_ASSETS_STORAGE_BACKEND=assets-fs
- PENPOT_STORAGE_ASSETS_FS_DIRECTORY=/opt/data/assets
- PENPOT_TELEMETRY_ENABLED=false
# PENPOT_PUBLIC_URI needs to be set to in order to render thumbnails in the frontend
- PENPOT_PUBLIC_URI=http://${DEVICE_DOMAIN_NAME}:${APP_PENPOT_UI_PORT}
depends_on:
- penpot-postgres
- penpot-redis
restart: on-failure
penpot-exporter:
image: penpotapp/exporter:2.2.0@sha256:e8ced1e3db4e61db7c7dce2898bfa69da7c2344962e50d162343f7bd8f6a9dcc
user: "1000:1000"
environment:
- PENPOT_PUBLIC_URI=http://penpot-frontend
- PENPOT_REDIS_URI=redis://penpot-redis/0
restart: on-failure
penpot-postgres:
image: postgres:15@sha256:546445ad21cb5893c0997080b831ee45945e798c4359270e16413c8bd93575db
user: "1000:1000"
stop_signal: SIGINT
volumes:
- ${APP_DATA_DIR}/data/postgres:/var/lib/postgresql/data
environment:
- POSTGRES_INITDB_ARGS=--data-checksums
- POSTGRES_DB=penpot
- POSTGRES_USER=penpot
- POSTGRES_PASSWORD=penpot
restart: on-failure
penpot-redis:
image: redis:7@sha256:45bfd95117a171ff9c1b5304bdae80a7a61eb5bbf0793d6a86c9078526ad88fa
user: "1000:1000"
restart: on-failure