services: penpot-frontend: image: "penpotapp/frontend:2.3.1" container_name: penpot-frontend restart: always ports: - 9801:80 volumes: - /data/penpot2/penpot_assets_data:/opt/data env_file: - config.env depends_on: - penpot-backend - penpot-exporter networks: - penpot penpot-backend: image: "penpotapp/backend:2.3.1" container_name: penpot-backend restart: always volumes: - /data/penpot2/penpot_assets_data:/opt/data depends_on: - penpot-postgres - penpot-redis env_file: - config.env networks: - penpot penpot-exporter: image: "penpotapp/exporter:2.3.1" env_file: - config.env 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:15" container_name: penpot-db restart: always stop_signal: SIGINT volumes: - /data/penpot2/penpot_postgres_data:/var/lib/postgresql/data environment: - POSTGRES_INITDB_ARGS=--data-checksums - POSTGRES_DB=penpot - POSTGRES_USER=penpot - POSTGRES_PASSWORD=penpotdbpassword networks: - penpot penpot-redis: image: redis:7 restart: always networks: - penpot networks: penpot: #volumes: # penpot_postgres_data: # penpot_assets_data: