(feat) add penpot docker compose

And add launch scripts and update documentation.
This commit is contained in:
Andrey Antukh 2021-01-11 15:11:30 +01:00 committed by Yamila Moreno
parent 42da7bbedb
commit 5706cf128e
7 changed files with 136 additions and 8 deletions

View File

@ -222,15 +222,15 @@ Map a `conf.json`configuration file to `/usr/share/nginx/html/conf.json`. You ca
You have to configure an admin user:
```sh
# ensure migrations are properly set
$ docker-compose up -d
$ docker-compose -f docker-compose.yml -f docker-compose-inits.yml run --rm taiga-manage createsuperuser
$ ./launch-all.sh
$ ./taiga-manage.sh createsuperuser
```
## Up and running
```sh
$ docker-compose up -d
$ ./launch-all.sh
```
Default access for the application is **http://localhost:9000**.
@ -238,8 +238,8 @@ Default access for the application is **http://localhost:9000**.
## One shot commands
`docker-compose-inits.yml` lets launch manage.py commands on the back instance:
`taiga-manage.sh` lets launch manage.py commands on the back instance:
```sh
$ docker-compose -f docker-compose.yml -f docker-compose-inits.yml run --rm taiga-manage [COMMAND]
$ ./taiga-manage.sh [COMMAND]
```

View File

@ -1,4 +1,4 @@
version: "3.8"
version: "3.5"
x-environment:
&default-back-environment

119
docker-compose.penpot.yml Normal file
View File

@ -0,0 +1,119 @@
---
version: "3.5"
networks:
penpot:
volumes:
penpot_postgres_data:
penpot_assets_data:
services:
penpot-frontend:
image: "penpotapp/frontend:develop"
ports:
- 9001:80
volumes:
- penpot_assets_data:/opt/data
depends_on:
- penpot-backend
- penpot-exporter
networks:
- penpot
penpot-backend:
image: "penpotapp/backend:develop"
volumes:
- penpot_assets_data:/opt/data
depends_on:
- penpot-postgres
- penpot-redis
environment:
# Used for creating tokens, important to be true random value
- PENPOT_SECRET_KEY=provide-here-a-secret-random-key
# Should be set to the public domain when penpot is going to be
# served.
- PENPOT_PUBLIC_URI=http://localhost
# 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
- PENPOT_LOCAL_ASSETS_URI=http://penpot-frontend/internal/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. In any case you can see the source code of both
# client and server in the penpot repository.
- PENPOT_TELEMETRY_ENABLED=true
- PENPOT_TELEMETRY_WITH_TAIGA=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
- PENPOT_ASSERTS_ENABLED=false
- PENPOT_DEBUG=false
networks:
- penpot
penpot-exporter:
image: "penpotapp/exporter:develop"
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

View File

@ -1,4 +1,4 @@
version: "3.8"
version: "3.5"
x-environment:
&default-back-environment

3
launch-all.sh Executable file
View File

@ -0,0 +1,3 @@
#!/usr/bin/env sh
set -x
exec docker-compose -f docker-compose.yml -f docker-compose.penpot.yml up -d $@

3
launch-taiga.sh Executable file
View File

@ -0,0 +1,3 @@
#!/usr/bin/env sh
set -x
exec docker-compose -f docker-compose.yml up -d $@

3
taiga-manage.sh Executable file
View File

@ -0,0 +1,3 @@
#!/usr/bin/env sh
set -x
exec docker-compose -f docker-compose.yml -f docker-compose-inits.yml run --rm taiga-manage $@