mirror of
https://github.com/penpot/penpot.git
synced 2026-10-29 05:50:35 +00:00
Move the backend JDK to its latest maintenance build within Java 26 and refresh the dependency versions pinned by hand in the development and production images. - Backend: Zulu JDK 26.0.2 to 26.0.2.1. The jlink module list keeps jdk.management, so the prometheus process metrics stay exported. - Node.js 24.22.1 in .nvmrc, the development image tarball and the two plugins deploy workflows that pin it. - pnpm 12.15.0 in the four Dockerfiles, the 34 packageManager fields and the eleven lockfiles. - Development tools: clj-kondo 2026.10.20, Babashka 1.13.226, Pixi 0.83.0, GitHub CLI 2.103.0, AWS CLI 2.38.5 and uv 0.13.5. - Infra services: RustFS 1.0.3, Mailpit v1.32.0, and Valkey pinned to 8.1.10 instead of the floating 8.1 tag. Fix SERENA_UPDATE_VERSION in the compose file. A value there makes the start script reinstall that Serena release on every start, overriding the one baked into the image; it was replacing 1.7.0 with 1.6.1. The hardened base image updates are left to Renovate. Closes #12599 AI-assisted-by: deepseek-v4.1-flash Signed-off-by: Andrey Antukh <niwi@niwi.nz>
124 lines
2.6 KiB
YAML
124 lines
2.6 KiB
YAML
networks:
|
|
default:
|
|
name: penpot_shared
|
|
external: true
|
|
|
|
volumes:
|
|
postgres_data_pg18:
|
|
name: ${PENPOT_POSTGRES_DATA_VOLUME}
|
|
rustfs_data:
|
|
name: ${PENPOT_RUSTFS_DATA_VOLUME}
|
|
mailpit_data:
|
|
name: ${PENPOT_MAILPIT_DATA_VOLUME}
|
|
valkey_data:
|
|
name: penpotdev_valkey_data
|
|
|
|
services:
|
|
rustfs:
|
|
image: "rustfs/rustfs:1.0.3"
|
|
command: /data
|
|
|
|
volumes:
|
|
- "rustfs_data:/data"
|
|
|
|
environment:
|
|
- RUSTFS_ACCESS_KEY=${AWS_ACCESS_KEY_ID}
|
|
- RUSTFS_SECRET_KEY=${AWS_SECRET_ACCESS_KEY}
|
|
- RUSTFS_ADDRESS=:9000
|
|
- RUSTFS_CONSOLE_ADDRESS=:9001
|
|
- RUSTFS_CONSOLE_ENABLE=true
|
|
|
|
ports:
|
|
- "127.0.0.1:9000:9000"
|
|
- "127.0.0.1:9001:9001"
|
|
|
|
healthcheck:
|
|
test: ["CMD", "curl", "--fail", "http://localhost:9000/health"]
|
|
interval: 1s
|
|
timeout: 5s
|
|
retries: 30
|
|
|
|
networks:
|
|
default:
|
|
aliases:
|
|
- rustfs
|
|
|
|
postgres:
|
|
image: postgres:18.6
|
|
command: postgres -c config_file=/etc/postgresql.conf
|
|
restart: always
|
|
stop_signal: SIGINT
|
|
environment:
|
|
- POSTGRES_INITDB_ARGS=--data-checksums
|
|
- POSTGRES_DB=penpot
|
|
- POSTGRES_USER=penpot
|
|
- POSTGRES_PASSWORD=penpot
|
|
volumes:
|
|
- ./files/postgresql.conf:/etc/postgresql.conf:z
|
|
- ./files/postgresql_init.sql:/docker-entrypoint-initdb.d/init.sql:z
|
|
- postgres_data_pg18:/var/lib/postgresql
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "pg_isready -h 127.0.0.1 -U $$POSTGRES_USER -d $$POSTGRES_DB"]
|
|
interval: 2s
|
|
timeout: 5s
|
|
retries: 30
|
|
networks:
|
|
default:
|
|
aliases:
|
|
- postgres
|
|
|
|
valkey:
|
|
image: valkey/valkey:8.1.10
|
|
restart: always
|
|
command: valkey-server --save 120 1 --loglevel warning
|
|
volumes:
|
|
- "valkey_data:/data"
|
|
networks:
|
|
default:
|
|
aliases:
|
|
- valkey
|
|
|
|
mailer:
|
|
image: axllent/mailpit:v1.32.0
|
|
restart: always
|
|
volumes:
|
|
- "mailpit_data:/data"
|
|
environment:
|
|
- MP_DATABASE=/data/mailpit.db
|
|
- MP_MAX_MESSAGES=5000
|
|
- MP_DISABLE_VERSION_CHECK=true
|
|
expose:
|
|
- '1025'
|
|
ports:
|
|
- "127.0.0.1:1080:8025"
|
|
|
|
healthcheck:
|
|
test: ["CMD", "wget", "--quiet", "--spider", "http://localhost:8025/readyz"]
|
|
interval: 2s
|
|
timeout: 5s
|
|
retries: 15
|
|
|
|
networks:
|
|
default:
|
|
aliases:
|
|
- mailer
|
|
|
|
# https://github.com/rroemhild/docker-test-openldap
|
|
ldap:
|
|
image: rroemhild/test-openldap:2.1
|
|
expose:
|
|
- '10389'
|
|
- '10636'
|
|
ports:
|
|
- "10389:10389"
|
|
- "10636:10636"
|
|
ulimits:
|
|
nofile:
|
|
soft: 1024
|
|
hard: 1024
|
|
|
|
networks:
|
|
default:
|
|
aliases:
|
|
- ldap
|