Back to Templates
Penpot logo

Penpot

v2.3.2

Penpot is the web-based open-source design tool that bridges the gap between designers and developers.

Deploy on Dokploy

Deploy Penpot on Dokploy

  1. Install Dokploy on your server if you haven't already.
  2. In your Dokploy panel, open a project and click Create Service → Template.
  3. Search for Penpot and click Create — Dokploy configures domains, environment variables, and volumes for you.

Alternatively, create a Compose service, go to Advanced → Import from Base64, and paste this payload:

base64
ewogICJjb21wb3NlIjogIiMjIENvbW1vbiBmbGFnczpcbiMgZGVtby11c2Vyc1xuIyBlbWFpbC12ZXJpZmljYXRpb25cbiMgbG9nLWVtYWlsc1xuIyBsb2ctaW52aXRhdGlvbi10b2tlbnNcbiMgbG9naW4td2l0aC1naXRodWJcbiMgbG9naW4td2l0aC1naXRsYWJcbiMgbG9naW4td2l0aC1nb29nbGVcbiMgbG9naW4td2l0aC1sZGFwXG4jIGxvZ2luLXdpdGgtb2lkY1xuIyBsb2dpbi13aXRoLXBhc3N3b3JkXG4jIHByZXBsLXNlcnZlclxuIyByZWdpc3RyYXRpb25cbiMgc2VjdXJlLXNlc3Npb24tY29va2llc1xuIyBzbXRwXG4jIHNtdHAtZGVidWdcbiMgdGVsZW1ldHJ5XG4jIHdlYmhvb2tzXG4jI1xuIyMgWW91IGNhbiByZWFkIG1vcmUgYWJvdXQgYWxsIGF2YWlsYWJsZSBmbGFncyBhbmQgb3RoZXJcbiMjIGVudmlyb25tZW50IHZhcmlhYmxlcyBoZXJlOlxuIyMgaHR0cHM6Ly9oZWxwLnBlbnBvdC5hcHAvdGVjaG5pY2FsLWd1aWRlL2NvbmZpZ3VyYXRpb24vI2FkdmFuY2VkLWNvbmZpZ3VyYXRpb25cbiNcbiMgV0FSTklORzogaWYgeW91J3JlIGV4cG9zaW5nIFBlbnBvdCB0byB0aGUgaW50ZXJuZXQsIHlvdSBzaG91bGQgcmVtb3ZlIHRoZSBmbGFnc1xuIyAnZGlzYWJsZS1zZWN1cmUtc2Vzc2lvbi1jb29raWVzJyBhbmQgJ2Rpc2FibGUtZW1haWwtdmVyaWZpY2F0aW9uJ1xuXG52b2x1bWVzOlxuICBwZW5wb3RfcG9zdGdyZXNfdjE1OlxuICBwZW5wb3RfYXNzZXRzOlxuICBwZW5wb3RfdHJhZWZpazpcbiAgIyBwZW5wb3RfbWluaW86XG5cbnNlcnZpY2VzOlxuXG4gIHBlbnBvdC1mcm9udGVuZDpcbiAgICBpbWFnZTogXCJwZW5wb3RhcHAvZnJvbnRlbmQ6Mi42LjFcIlxuICAgIHJlc3RhcnQ6IGFsd2F5c1xuICAgIHBvcnRzOlxuICAgICAgLSA4MDgwXG4gICAgICAtIDkwMDFcblxuICAgIHZvbHVtZXM6XG4gICAgICAtIHBlbnBvdF9hc3NldHM6L29wdC9kYXRhL2Fzc2V0c1xuXG4gICAgZGVwZW5kc19vbjpcbiAgICAgIC0gcGVucG90LWJhY2tlbmRcbiAgICAgIC0gcGVucG90LWV4cG9ydGVyXG5cblxuXG4gICAgZW52aXJvbm1lbnQ6XG4gICAgICBQRU5QT1RfRkxBR1M6IGRpc2FibGUtZW1haWwtdmVyaWZpY2F0aW9uIGVuYWJsZS1zbXRwIGVuYWJsZS1wcmVwbC1zZXJ2ZXIgZGlzYWJsZS1zZWN1cmUtc2Vzc2lvbi1jb29raWVzXG5cbiAgcGVucG90LWJhY2tlbmQ6XG4gICAgaW1hZ2U6IFwicGVucG90YXBwL2JhY2tlbmQ6Mi42LjFcIlxuICAgIHJlc3RhcnQ6IGFsd2F5c1xuXG4gICAgdm9sdW1lczpcbiAgICAgIC0gcGVucG90X2Fzc2V0czovb3B0L2RhdGEvYXNzZXRzXG5cbiAgICBkZXBlbmRzX29uOlxuICAgICAgLSBwZW5wb3QtcG9zdGdyZXNcbiAgICAgIC0gcGVucG90LXJlZGlzXG5cblxuXG4gICAgIyMgQ29uZmlndXJhdGlvbiBlbnZyb25tZW50IHZhcmlhYmxlcyBmb3IgdGhlIGJhY2tlbmRcbiAgICAjIyBjb250YWluZXIuXG5cbiAgICBlbnZpcm9ubWVudDpcbiAgICAgIFBFTlBPVF9QVUJMSUNfVVJJOiBodHRwOi8vJHtET01BSU5fTkFNRX1cbiAgICAgIFBFTlBPVF9GTEFHUzogZGlzYWJsZS1lbWFpbC12ZXJpZmljYXRpb24gZW5hYmxlLXNtdHAgZW5hYmxlLXByZXBsLXNlcnZlciBkaXNhYmxlLXNlY3VyZS1zZXNzaW9uLWNvb2tpZXNcblxuICAgICAgIyMgUGVucG90IFNFQ1JFVCBLRVkuIEl0IHNlcnZlcyBhcyBhIG1hc3RlciBrZXkgZnJvbSB3aGljaCBvdGhlciBrZXlzIGZvciBzdWJzeXN0ZW1zXG4gICAgICAjIyAoZWcgaHR0cCBzZXNzaW9ucywgb3IgaW52aXRhdGlvbnMpIGFyZSBkZXJpdmVkLlxuICAgICAgIyNcbiAgICAgICMjIElmIHlvdSBsZWF2ZSBpdCBjb21tZW50ZWQsIGFsbCBjcmVhdGVkIHNlc3Npb25zIGFuZCBpbnZpdGF0aW9ucyB3aWxsXG4gICAgICAjIyBiZWNvbWUgaW52YWxpZCBvbiBjb250YWluZXIgcmVzdGFydC5cbiAgICAgICMjXG4gICAgICAjIyBJZiB5b3UgZ29pbmcgdG8gdW5jb21tZW50IHRoaXMsIHdlIHJlY29tbWVuZCB0byB1c2UgYSB0cnVsbHkgcmFuZG9tbHkgZ2VuZXJhdGVkXG4gICAgICAjIyA1MTIgYml0cyBiYXNlNjQgZW5jb2RlZCBzdHJpbmcgaGVyZS4gIFlvdSBjYW4gZ2VuZXJhdGUgb25lIHdpdGg6XG4gICAgICAjI1xuICAgICAgIyMgcHl0aG9uMyAtYyBcImltcG9ydCBzZWNyZXRzOyBwcmludChzZWNyZXRzLnRva2VuX3VybHNhZmUoNjQpKVwiXG5cbiAgICAgICMgUEVOUE9UX1NFQ1JFVF9LRVk6IG15LWluc2VjdXJlLWtleVxuXG4gICAgICAjIyBUaGUgUFJFUEwgaG9zdC4gTWFpbmx5IHVzZWQgZm9yIGV4dGVybmFsIHByb2dyYW1hdGljIGFjY2VzcyB0byBwZW5wb3QgYmFja2VuZFxuICAgICAgIyMgKGV4YW1wbGU6IGFkbWluKS4gQnkgZGVmYXVsdCBpdCB3aWxsIGxpc3RlbiBvbiBgbG9jYWxob3N0YCBidXQgaWYgeW91IGFyZSBnb2luZyB0byB1c2VcbiAgICAgICMjIHRoZSBgYWRtaW5gLCB5b3Ugd2lsbCBuZWVkIHRvIHVuY29tbWVudCB0aGlzIGFuZCBzZXQgdGhlIGhvc3QgdG8gYDAuMC4wLjBgLlxuXG4gICAgICAjIFBFTlBPVF9QUkVQTF9IT1NUOiAwLjAuMC4wXG5cbiAgICAgICMjIERhdGFiYXNlIGNvbm5lY3Rpb24gcGFyYW1ldGVycy4gRG9uJ3QgdG91Y2ggdGhlbSB1bmxlc3MgeW91IGFyZSB1c2luZyBjdXN0b21cbiAgICAgICMjIHBvc3RncmVzcWwgY29ubmVjdGlvbiBwYXJhbWV0ZXJzLlxuXG4gICAgICBQRU5QT1RfREFUQUJBU0VfVVJJOiBwb3N0Z3Jlc3FsOi8vcGVucG90LXBvc3RncmVzL3BlbnBvdFxuICAgICAgUEVOUE9UX0RBVEFCQVNFX1VTRVJOQU1FOiBwZW5wb3RcbiAgICAgIFBFTlBPVF9EQVRBQkFTRV9QQVNTV09SRDogcGVucG90XG5cbiAgICAgICMjIFJlZGlzIGlzIHVzZWQgZm9yIHRoZSB3ZWJzb2NrZXRzIG5vdGlmaWNhdGlvbnMuIERvbid0IHRvdWNoIHVubGVzcyB0aGUgcmVkaXNcbiAgICAgICMjIGNvbnRhaW5lciBoYXMgZGlmZmVyZW50IHBhcmFtZXRlcnMgb3IgZGlmZmVyZW50IG5hbWUuXG5cbiAgICAgIFBFTlBPVF9SRURJU19VUkk6IHJlZGlzOi8vcGVucG90LXJlZGlzLzBcblxuICAgICAgIyMgRGVmYXVsdCBjb25maWd1cmF0aW9uIGZvciBhc3NldHMgc3RvcmFnZTogdXNpbmcgZmlsZXN5c3RlbSBiYXNlZCB3aXRoIGFsbCBmaWxlc1xuICAgICAgIyMgc3RvcmVkIGluIGEgZG9ja2VyIHZvbHVtZS5cblxuICAgICAgUEVOUE9UX0FTU0VUU19TVE9SQUdFX0JBQ0tFTkQ6IGFzc2V0cy1mc1xuICAgICAgUEVOUE9UX1NUT1JBR0VfQVNTRVRTX0ZTX0RJUkVDVE9SWTogL29wdC9kYXRhL2Fzc2V0c1xuXG4gICAgICAjIyBBbHNvIGNhbiBiZSBjb25maWd1cmVkIHRvIHRvIHVzZSBhIFMzIGNvbXBhdGlibGUgc3RvcmFnZVxuICAgICAgIyMgc2VydmljZSBsaWtlIE1pbmlJTy4gTG9vayBiZWxvdyBmb3IgbWluaW8gc2VydmljZSBzZXR1cC5cblxuICAgICAgIyBBV1NfQUNDRVNTX0tFWV9JRDogPEtFWV9JRD5cbiAgICAgICMgQVdTX1NFQ1JFVF9BQ0NFU1NfS0VZOiA8QUNDRVNTX0tFWT5cbiAgICAgICMgUEVOUE9UX0FTU0VUU19TVE9SQUdFX0JBQ0tFTkQ6IGFzc2V0cy1zM1xuICAgICAgIyBQRU5QT1RfU1RPUkFHRV9BU1NFVFNfUzNfRU5EUE9JTlQ6IGh0dHA6Ly9wZW5wb3QtbWluaW86OTAwMFxuICAgICAgIyBQRU5QT1RfU1RPUkFHRV9BU1NFVFNfUzNfQlVDS0VUOiA8QlVLRVRfTkFNRT5cblxuICAgICAgIyMgVGVsZW1ldHJ5LiBXaGVuIGVuYWJsZWQsIGEgcGVyaW9kaWNhbCBwcm9jZXNzIHdpbGwgc2VuZCBhbm9ueW1vdXMgZGF0YSBhYm91dCB0aGlzXG4gICAgICAjIyBpbnN0YW5jZS4gVGVsZW1ldHJ5IGRhdGEgd2lsbCBlbmFibGUgdXMgdG8gbGVhcm4gaG93IHRoZSBhcHBsaWNhdGlvbiBpcyB1c2VkLFxuICAgICAgIyMgYmFzZWQgb24gcmVhbCBzY2VuYXJpb3MuIElmIHlvdSB3YW50IHRvIGhlbHAgdXMsIHBsZWFzZSBsZWF2ZSBpdCBlbmFibGVkLiBZb3UgY2FuXG4gICAgICAjIyBhdWRpdCB3aGF0IGRhdGEgd2Ugc2VuZCB3aXRoIHRoZSBjb2RlIGF2YWlsYWJsZSBvbiBnaXRodWIuXG5cbiAgICAgIFBFTlBPVF9URUxFTUVUUllfRU5BQkxFRDogdHJ1ZVxuXG4gICAgICAjIyBFeGFtcGxlIFNNVFAvRW1haWwgY29uZmlndXJhdGlvbi4gQnkgZGVmYXVsdCwgZW1haWxzIGFyZSBzZW50IHRvIHRoZSBtYWlsY2F0Y2hcbiAgICAgICMjIHNlcnZpY2UsIGJ1dCBmb3IgcHJvZHVjdGlvbiB1c2FnZSBpdCBpcyByZWNvbW1lbmRlZCB0byBzZXR1cCBhIHJlYWwgU01UUFxuICAgICAgIyMgcHJvdmlkZXIuIEVtYWlscyBhcmUgdXNlZCB0byBjb25maXJtIHVzZXIgcmVnaXN0cmF0aW9ucyAmIGludml0YXRpb25zLiBMb29rIGJlbG93XG4gICAgICAjIyBob3cgdGhlIG1haWxjYXRjaCBzZXJ2aWNlIGlzIGNvbmZpZ3VyZWQuXG5cbiAgICAgIFBFTlBPVF9TTVRQX0RFRkFVTFRfRlJPTTogbm8tcmVwbHlAZXhhbXBsZS5jb21cbiAgICAgIFBFTlBPVF9TTVRQX0RFRkFVTFRfUkVQTFlfVE86IG5vLXJlcGx5QGV4YW1wbGUuY29tXG4gICAgICBQRU5QT1RfU01UUF9IT1NUOiBwZW5wb3QtbWFpbGNhdGNoXG4gICAgICBQRU5QT1RfU01UUF9QT1JUOiAxMDI1XG4gICAgICBQRU5QT1RfU01UUF9VU0VSTkFNRTpcbiAgICAgIFBFTlBPVF9TTVRQX1BBU1NXT1JEOlxuICAgICAgUEVOUE9UX1NNVFBfVExTOiBmYWxzZVxuICAgICAgUEVOUE9UX1NNVFBfU1NMOiBmYWxzZVxuXG4gIHBlbnBvdC1leHBvcnRlcjpcbiAgICBpbWFnZTogXCJwZW5wb3RhcHAvZXhwb3J0ZXI6Mi42LjFcIlxuICAgIHJlc3RhcnQ6IGFsd2F5c1xuXG5cbiAgICBlbnZpcm9ubWVudDpcbiAgICAgICMgRG9uJ3QgdG91Y2ggaXQ7IHRoaXMgdXNlcyBhbiBpbnRlcm5hbCBkb2NrZXIgbmV0d29yayB0b1xuICAgICAgIyBjb21tdW5pY2F0ZSB3aXRoIHRoZSBmcm9udGVuZC5cbiAgICAgIFBFTlBPVF9QVUJMSUNfVVJJOiBodHRwOi8vcGVucG90LWZyb250ZW5kXG5cbiAgICAgICMjIFJlZGlzIGlzIHVzZWQgZm9yIHRoZSB3ZWJzb2NrZXRzIG5vdGlmaWNhdGlvbnMuXG4gICAgICBQRU5QT1RfUkVESVNfVVJJOiByZWRpczovL3BlbnBvdC1yZWRpcy8wXG5cbiAgcGVucG90LXBvc3RncmVzOlxuICAgIGltYWdlOiBcInBvc3RncmVzOjE1XCJcbiAgICByZXN0YXJ0OiBhbHdheXNcbiAgICBzdG9wX3NpZ25hbDogU0lHSU5UXG5cbiAgICB2b2x1bWVzOlxuICAgICAgLSBwZW5wb3RfcG9zdGdyZXNfdjE1Oi92YXIvbGliL3Bvc3RncmVzcWwvZGF0YVxuXG5cblxuICAgIGVudmlyb25tZW50OlxuICAgICAgLSBQT1NUR1JFU19JTklUREJfQVJHUz0tLWRhdGEtY2hlY2tzdW1zXG4gICAgICAtIFBPU1RHUkVTX0RCPXBlbnBvdFxuICAgICAgLSBQT1NUR1JFU19VU0VSPXBlbnBvdFxuICAgICAgLSBQT1NUR1JFU19QQVNTV09SRD1wZW5wb3RcblxuICBwZW5wb3QtcmVkaXM6XG4gICAgaW1hZ2U6IHJlZGlzOjcuMlxuICAgIHJlc3RhcnQ6IGFsd2F5c1xuXG5cbiAgIyMgQSBtYWlsY2F0Y2ggc2VydmljZSwgdXNlZCBhcyB0ZW1wb3JhbCBTTVRQIHNlcnZlci4gWW91IGNhbiBhY2Nlc3MgdmlhIEhUVFAgdG8gdGhlXG4gICMjIHBvcnQgMTA4MCBmb3IgcmVhZCBhbGwgZW1haWxzIHRoZSBwZW5wb3QgcGxhdGZvcm0gaGFzIHNlbnQuIFNob3VsZCBiZSBvbmx5IHVzZWQgYXMgYVxuICAjIyB0ZW1wb3JhbCBzb2x1dGlvbiB3aGlsZSBubyByZWFsIFNNVFAgcHJvdmlkZXIgaXMgY29uZmlndXJlZC5cblxuICBwZW5wb3QtbWFpbGNhdGNoOlxuICAgIGltYWdlOiBzajI2L21haWxjYXRjaGVyOmxhdGVzdFxuICAgIHJlc3RhcnQ6IGFsd2F5c1xuICAgIGV4cG9zZTpcbiAgICAgIC0gJzEwMjUnXG4gICAgcG9ydHM6XG4gICAgICAtIDEwODBcblxuXG4gICMjIEV4YW1wbGUgY29uZmlndXJhdGlvbiBvZiBNaW5pSU8gKFMzIGNvbXBhdGlibGUgb2JqZWN0IHN0b3JhZ2Ugc2VydmljZSk7IElmIHlvdSBkb24ndFxuICAjIyBoYXZlIHByZWZlcmVuY2UsIHRoZW4ganVzdCB1c2UgZmlsZXN5c3RlbSwgdGhpcyBpcyBoZXJlIGp1c3QgZm9yIHRoZSBjb21wbGV0ZW5lc3MuXG5cbiAgIyBtaW5pbzpcbiAgIyAgIGltYWdlOiBcIm1pbmlvL21pbmlvOmxhdGVzdFwiXG4gICMgICBjb21tYW5kOiBtaW5pbyBzZXJ2ZXIgL21udC9kYXRhIC0tY29uc29sZS1hZGRyZXNzIFwiOjkwMDFcIlxuICAjICAgcmVzdGFydDogYWx3YXlzXG4gICNcbiAgIyAgIHZvbHVtZXM6XG4gICMgICAgIC0gXCJwZW5wb3RfbWluaW86L21udC9kYXRhXCJcbiAgI1xuICAjICAgZW52aXJvbm1lbnQ6XG4gICMgICAgIC0gTUlOSU9fUk9PVF9VU0VSPW1pbmlvYWRtaW5cbiAgIyAgICAgLSBNSU5JT19ST09UX1BBU1NXT1JEPW1pbmlvYWRtaW5cbiAgI1xuICAjICAgcG9ydHM6XG4gICMgICAgIC0gOTAwMDo5MDAwXG4gICMgICAgIC0gOTAwMTo5MDAxIiwKICAiY29uZmlnIjogIlt2YXJpYWJsZXNdXG5tYWluX2RvbWFpbiA9IFwiJHtkb21haW59XCJcblxuW2NvbmZpZ11cbm1vdW50cyA9IFtdXG5cbltbY29uZmlnLmRvbWFpbnNdXVxuc2VydmljZU5hbWUgPSBcInBlbnBvdC1mcm9udGVuZFwiXG5wb3J0ID0gODA4MFxuaG9zdCA9IFwiJHttYWluX2RvbWFpbn1cIlxuXG5bY29uZmlnLmVudl1cbkRPTUFJTl9OQU1FID0gXCIke21haW5fZG9tYWlufVwiIgp9

Configuration

The exact Docker Compose and template configuration this template deploys.

Related Templates

Self-host Penpot in minutes

Dokploy is a free, open source deployment platform. Deploy Penpot and 499+ other templates on your own infrastructure with a single click.