This commit is contained in:
Ash Leece 2021-06-17 16:47:46 +01:00
parent 4383d4d6bf
commit d585500d54
2 changed files with 160 additions and 0 deletions

85
penpot/config.env Normal file
View File

@ -0,0 +1,85 @@
# Should be set to the public domain when penpot is going to be
# served.
PENPOT_PUBLIC_URI=https://test.home.leece.im
# Standard database connection parametes (only postgresql is
# supported):
PENPOT_DATABASE_URI=postgresql://penpot-postgres/penpot
PENPOT_DATABASE_USERNAME=penpot
PENPOT_DATABASE_PASSWORD=penpot
# Redis is used for the websockets notifications.
PENPOT_REDIS_URI=redis://penpot-redis/0
# By default files upload by user are stored in local filesystem. But
# it can be configured to store in AWS S3 or completelly in de the
# database. Storing in the database makes the backups more easy but
# will make access to media less performant.
PENPOT_STORAGE_BACKEND=fs
PENPOT_STORAGE_FS_DIRECTORY=/opt/data/assets
# Telemetry. When enabled, a periodical process will send annonymous
# data about this instance. Telemetry data will enable us to learn on
# how the application is used based on real scenarios. If you want to
# help us, please leave it enabled.
PENPOT_TELEMETRY_ENABLED=true
# Email sending configuration. By default emails are printed in
# console, but for production usage is recommeded to setup a real SMTP
# provider. Emails are used for confirm user registration.
PENPOT_SMTP_ENABLED=false
PENPOT_SMTP_DEFAULT_FROM=no-reply@example.com
PENPOT_SMTP_DEFAULT_REPLY_TO=no-reply@example.com
# PENPOT_SMTP_HOST=
# PENPOT_SMTP_PORT=
# PENPOT_SMTP_USERNAME=
# PENPOT_SMTP_PASSWORD=
# PENPOT_SMTP_TLS=true
# PENPOT_SMTP_SSL=false
# Enable or disable external user registration process.
PENPOT_REGISTRATION_ENABLED=true
# Comma separated list of allowed domains to register. Empty for allow
# all.
# PENPOT_REGISTRATION_DOMAIN_WHITELIST=""
# Penpot comes with the facility to create quick demo users that are
# automatically deleted after some time. This settings enables or
# disables the creation of demo users.
PENPOT_ALLOW_DEMO_USERS=true
## Authentication providers
# Google
# PENPOT_GOOGLE_CLIENT_ID=
# PENPOT_GOOGLE_CLIENT_SECRET=
# Github
# PENPOT_GITHUB_CLIENT_ID=
# PENPOT_GITHUB_CLIENT_SECRET=
# Gitlab
# PENPOT_GITLAB_BASE_URI=https://gitlab.com
# PENPOT_GITLAB_CLIENT_ID=
# PENPOT_GITLAB_CLIENT_SECRET=
# OpenID Connect (since 1.5.0)
# PENPOT_OIDC_BASE_URI=
# PENPOT_OIDC_CLIENT_ID=
# PENPOT_OIDC_CLIENT_SECRET=
# LDAP
# PENPOT_LDAP_HOST=ldap
# PENPOT_LDAP_PORT=10389
# PENPOT_LDAP_SSL=false
# PENPOT_LDAP_STARTTLS=false
# PENPOT_LDAP_BASE_DN=ou=people,dc=planetexpress,dc=com
# PENPOT_LDAP_BIND_DN=cn=admin,dc=planetexpress,dc=com
# PENPOT_LDAP_BIND_PASSWORD=GoodNewsEveryone
# PENPOT_LDAP_ATTRS_USERNAME=uid
# PENPOT_LDAP_ATTRS_EMAIL=mail
# PENPOT_LDAP_ATTRS_FULLNAME=cn
# PENPOT_LDAP_ATTRS_PHOTO=jpegPhoto
# PENPOT_LOGIN_WITH_LDAP=true

View File

@ -0,0 +1,75 @@
---
version: "3.5"
networks:
penpot:
volumes:
penpot_postgres_data:
penpot_assets_data:
services:
penpot-frontend:
image: "penpotapp/frontend:latest"
ports:
- 9001:80
volumes:
- penpot_assets_data:/opt/data
env_file:
- config.env
depends_on:
- penpot-backend
- penpot-exporter
networks:
- penpot
penpot-backend:
image: "penpotapp/backend:latest"
volumes:
- penpot_assets_data:/opt/data
depends_on:
- penpot-postgres
- penpot-redis
env_file:
- config.env
networks:
- penpot
penpot-exporter:
image: "penpotapp/exporter:latest"
environment:
# Don't touch it; this uses internal docker network to
# communicate with the frontend.
- PENPOT_PUBLIC_URI=http://penpot-frontend
networks:
- penpot
penpot-postgres:
image: "postgres:13"
restart: always
stop_signal: SIGINT
environment:
- POSTGRES_INITDB_ARGS=--data-checksums
- POSTGRES_DB=penpot
- POSTGRES_USER=penpot
- POSTGRES_PASSWORD=penpot
volumes:
- penpot_postgres_data:/var/lib/postgresql/data
networks:
- penpot
penpot-redis:
image: redis:6
restart: always
networks:
- penpot