Hello!
After launching the docker compose, it does turn on without any problem but accessing the frontend only shows a blank page.
I’m installing Penpot through a Docker Container. I’m using Dockge to manage the Docker Compose file in case it’s something relevant and nginx for the proxy for a local network installation.
I’ve downloaded the official docker_compose.yaml file from: Github
the only things that I’ve modified are specifing the URL (http://penpot.casa), and binded the volumes to my machine hard drives .
Logs do register me entering the front-end, so I don’t think nginx is an issue and it has websocket support enabled
Docker compose file:
## Common flags:
# demo-users
# email-verification
# log-emails
# log-invitation-tokens
# login-with-github
# login-with-gitlab
# login-with-google
# login-with-ldap
# login-with-oidc
# login-with-password
# prepl-server
# registration
# secure-session-cookies
# smtp
# smtp-debug
# telemetry
# webhooks
##
## You can read more about all available flags and other
## environment variables here:
## https://help.penpot.app/technical-guide/configuration/#advanced-configuration
#
# WARNING: if you're exposing Penpot to the internet, you should remove the flags
# 'disable-secure-session-cookies' and 'disable-email-verification'
x-flags: &a1
PENPOT_FLAGS: disable-email-verification enable-smtp enable-prepl-server
disable-secure-session-cookies
x-uri: &a3
PENPOT_PUBLIC_URI: http://penpot.casa
x-body-size:
# Max body size (30MiB); Used for plain requests, should never be
# greater than multi-part size
&a2
PENPOT_HTTP_SERVER_MAX_BODY_SIZE: 31457280
# Max multipart body size (350MiB)
PENPOT_HTTP_SERVER_MAX_MULTIPART_BODY_SIZE: 367001600
networks:
penpot: null
volumes:
penpot_postgres_v15:
driver: local
driver_opts:
o: bind
type: none
device: /mnt/Personal/Apps/Penpot/pgData
penpot_assets:
driver: local
driver_opts:
o: bind
type: none
device: /mnt/Personal/Apps/Penpot/Assets
# penpot_traefik:
# penpot_minio:
services:
penpot-frontend:
image: penpotapp/frontend:${PENPOT_VERSION:-latest}
container_name: penpot-frontend
restart: always
ports:
- 9001:8080
volumes:
- penpot_assets:/opt/data/assets
depends_on:
- penpot-backend
- penpot-exporter
networks:
- penpot
environment:
<<:
- *a1
- *a2
penpot-backend:
image: penpotapp/backend:${PENPOT_VERSION:-latest}
container_name: penpot-backend
restart: always
volumes:
- penpot_assets:/opt/data/assets
depends_on:
penpot-postgres:
condition: service_healthy
penpot-valkey:
condition: service_healthy
networks:
- penpot
environment:
<<:
- *a1
- *a3
- *a2
PENPOT_DATABASE_URI: postgresql://penpot-postgres/penpot
PENPOT_DATABASE_USERNAME: penpot
PENPOT_DATABASE_PASSWORD: penpot
PENPOT_REDIS_URI: redis://penpot-valkey/0
PENPOT_ASSETS_STORAGE_BACKEND: assets-fs
PENPOT_STORAGE_ASSETS_FS_DIRECTORY: /opt/data/assets
PENPOT_TELEMETRY_ENABLED: true
PENPOT_TELEMETRY_REFERER: compose
PENPOT_SMTP_DEFAULT_FROM: no-reply@example.com
PENPOT_SMTP_DEFAULT_REPLY_TO: no-reply@example.com
PENPOT_SMTP_HOST: penpot-mailcatch
PENPOT_SMTP_PORT: 1025
PENPOT_SMTP_USERNAME: null
PENPOT_SMTP_PASSWORD: null
PENPOT_SMTP_TLS: false
PENPOT_SMTP_SSL: false
penpot-exporter:
image: penpotapp/exporter:${PENPOT_VERSION:-latest}
container_name: penpot-exporter
restart: always
depends_on:
penpot-valkey:
condition: service_healthy
networks:
- penpot
environment:
PENPOT_PUBLIC_URI: http://penpot-frontend:8080
PENPOT_REDIS_URI: redis://penpot-valkey/0
penpot-postgres:
image: postgres:15
container_name: penpot-postgres
restart: always
stop_signal: SIGINT
healthcheck:
test:
- CMD-SHELL
- pg_isready -U penpot
interval: 2s
timeout: 10s
retries: 5
start_period: 2s
volumes:
- penpot_postgres_v15:/var/lib/postgresql/data
networks:
- penpot
environment:
- POSTGRES_INITDB_ARGS=--data-checksums
- POSTGRES_DB=penpot
- POSTGRES_USER=penpot
- POSTGRES_PASSWORD=penpot
penpot-valkey:
image: valkey/valkey:8.1
container_name: penpot-valkey
restart: always
healthcheck:
test:
- CMD-SHELL
- valkey-cli ping | grep PONG
interval: 1s
timeout: 3s
retries: 5
start_period: 3s
networks:
- penpot
penpot-mailcatch:
image: sj26/mailcatcher:latest
container_name: penpot-mailcatch
restart: always
expose:
- "1025"
ports:
- 1080:1080
networks:
- penpot