Homelab/nomad_jobs/services/penpot
2024-02-26 17:25:00 -08:00
..
penpot.nomad.hcl Remove Not Needed Port Labels 2024-02-26 17:25:00 -08:00
readme.md Add Penpot App 2024-02-23 04:32:56 -08:00

Penpot

Penpot is the Open-Source Design & Prototyping Tool for Product Teams. It is a great alternative to Figma or Adobe XD that you can host yourself. Learn all about it on their website.

Nomad Job for Penpot

Penpot already hosts documentation related to their architecture and how to deploy it; therefore, this will not duplicate documentation that can be found on their website such as available flags that can be applied. The nomad spec available in this repository defined the frontend, backend, and exporter services. It is expected that you already have the service dependencies running and available to the Penpot service as well as valid postgres credentials.

If you need help making those credentials, take a look at the postgres readme.

Service Dependencies

Configuring Penpot

Provided you do not need to make adjustments to the services exposed via the consul sidecar, the only edits needed are lines 1-42. The 'locals' blocks are referenced in other sections of the spec and as such we can do all of our configuration in one place. Some notable items are as follows:

  • TRAEFIK_DOMAIN - The domain you will be registering with traefik for access to the application
  • PENPOT_FLAGS - remove 'enable_smtp' if you are not going to give SMTP configuration
  • PENPOT_STORAGE_BACKEND - The configurations are given for both file system and minio storage. It doesn't affect anything if you include environment variables for both but you must make sure that you have the storage backend set to either 'assests-fs' or 'assets-s3' to inform Penpot which you intend to use. If you are using a filesystem and wish to persist data, you will need to make sure that your host volumes are properly configured.