Run locally
Terminal
$ npx launchfile up penpot Requires Docker Desktop. No source code needed — pulls pre-built images and starts penpot with all dependencies.
Image:
penpotapp/frontend:latest Launchfile
View on GitHub
# yaml-language-server: $schema=https://launchfile.dev/schema/v1
version: launch/v1
name: penpot
description: "Open-source design and prototyping platform"
components:
frontend:
image: penpotapp/frontend:latest
provides:
- protocol: http
port: 80
exposed: true
depends_on:
- component: backend
condition: healthy
- "exporter"
env:
PENPOT_FLAGS:
default: "enable-registration enable-login-with-password"
restart: always
backend:
image: penpotapp/backend:latest
provides:
- protocol: http
port: 6060
requires:
- type: postgres
set_env:
PENPOT_DATABASE_URI: $url
PENPOT_DATABASE_USERNAME: $user
PENPOT_DATABASE_PASSWORD: $password
- type: redis
set_env:
PENPOT_REDIS_URI: $url
env:
PENPOT_SECRET_KEY:
generator: secret
sensitive: true
PENPOT_FLAGS:
default: "enable-registration enable-login-with-password disable-email-verification"
PENPOT_PUBLIC_URI:
required: true
description: "Public URL where Penpot is accessible"
storage:
assets:
path: /opt/data/assets
persistent: true
health:
path: /readyz
start_period: 30s
restart: always
exporter:
image: penpotapp/exporter:latest
provides:
- protocol: http
port: 6061
env:
PENPOT_PUBLIC_URI:
required: true
description: "Public URL where Penpot is accessible"
restart: always Required Services
postgresredis
Components
3 components in this Launchfile.
frontendbackendexporter
Learn More
Spec references for features used in this Launchfile.