Releases: coollabsio/coolify
Releases · coollabsio/coolify
v4.0.0-beta.455
What's Changed
Security & Fixes
- Update Umami to v3.0.2 to address CVE-2025-66478 security vulnerability (#7459)
- Fix S3 credential whitespace causing backup failures (#7638, fixes #7469, #7594)
- Fix double deployments when multiple GitHub Apps access the same repository (#7604, fixes #2315)
- Fix 419 "Page Expired" login errors by changing default session driver (#7652)
- Fix migration failures blocking upgrades with idempotency guards (#7637, fixes #7606, #7625)
- Fix Docker container race condition during upgrades (#7603)
- Fix OAuth users being incorrectly prompted for password confirmation (#7608, fixes #4457)
- Fix read-only volume detection for Docker Compose long-form syntax (#7588)
- Fix CSRF login issues for Paperless service (#7450)
- Fix Postiz service failing due to outdated Node.js version (#7595)
- Fix test emails failing when sent to non-team email addresses (#7600)
- Fix execution time tooltip showing incorrect maximum value (#7593)
New Services & Templates
- Added Terraria game server template (#7323)
- Added Penpot with S3 storage template (#7407)
- Added Beszel Agent standalone template for multi-server monitoring (#7412)
- Updated Beszel to v0.16.1 (#7409)
- Updated Penpot to use Valkey instead of deprecated Redis (#7415)
- Updated Pterodactyl + Wings template to expose SFTP port (#7315)
- Redis Insight now connects to predefined networks by default (#7416)
- Added STORE_MODEL_IN_DB variable to LiteLLM template (#7440)
Improvements
- Real-time upgrade progress tracking with step-by-step visibility (#7609)
- Improved breadcrumb navigation with quick-switch dropdowns (#6360, fixes #4117)
- Link manually-added servers to Hetzner Cloud for power controls (#7592)
- Prioritize main/master branches in branch selection dropdown (#7520)
- Escape key now exits fullscreen logs view (#7632)
- Text selection no longer clears when deployment logs refresh (#7636)
- Optimized server status updates for better performance (#7639)
What's Changed (Github)
- Fix read-only volume detection and add refresh capability by @andrasbacsai in #7588
- feat: add Hetzner Cloud server linking for manually-added servers by @andrasbacsai in #7592
- Fix execution time tooltip maximum value by @andrasbacsai in #7593
- Fix: Allow test emails to be sent to any email address by @andrasbacsai in #7600
- Bump version to v455 by @andrasbacsai in #7601
- Fix double deployments with multiple GitHub Apps on same repo by @andrasbacsai in #7604
- Skip password confirmation for OAuth users by @andrasbacsai in #7608
- Fix Docker container race condition during upgrades by @andrasbacsai in #7603
- Improve upgrade process UX with better progress visibility by @andrasbacsai in #7609
- Fix deployment log view UX issues by @andrasbacsai in #7636
- fix: add idempotency guards to 18 migrations by @andrasbacsai in #7637
- Update Umami image tag to latest version by @FUTC-Coding in #7459
- Fix S3 credential whitespace issue with proper trimming by @andrasbacsai in #7638
- Feat: escape key fullscreen exit for logs view by @kessenma in #7632
- fix(service): postiz showing no available server by @ShadowArcanist in #7595
- feat: prioritize main/master branch selection by @duaneadam in #7520
- Fix CSRF Login issues, adjust PAPERLESS_URL environment variable refe… by @a-stein in #7450
- Add STORE_MODEL_IN_DB to LiteLLM environment variables by @lumoe in #7440
- fix:(service) Remov depreciated env and services on Penpot by @ShadowArcanist in #7415
- feat:(service) Add Beszel Agent as standalone template by @ShadowArcanist in #7412
- feat:(service) Bump Beszel version to 0.16.1 by @ShadowArcanist in #7409
- feat:(service) Add Penpot with s3 by @ShadowArcanist in #7407
- feat: add terraria service by @kunumigab in #7323
- Update Pterodactyl + Wings template to expose port 2022 for SFTP access by @MrDiamondDog in #7315
- feat:(service) Add Redis Insight to predefined docker networks by default by @ShadowArcanist in #7416
- Improve navigation from breadcrumb and Improve UI for this by @aaryan359 in #6360
- Change default session driver from Redis to database by @andrasbacsai in #7652
- Optimize PushServerUpdateJob with batch updates and async jobs by @andrasbacsai in #7639
- v4.0.0-beta.455 by @andrasbacsai in #7605
New Contributors
- @FUTC-Coding made their first contribution in #7459
- @kessenma made their first contribution in #7632
- @duaneadam made their first contribution in #7520
- @a-stein made their first contribution in #7450
- @lumoe made their first contribution in #7440
- @MrDiamondDog made their first contribution in #7315
Full Changelog: v4.0.0-beta.454...v4.0.0-beta.455
v4.0.0-beta.454
What's Changed
Security & Fixes
- Fix concurrent builds being ignored and add deployment queue limit protection (#7488, fixes #6708)
- Fix deployments incorrectly marked as failed after healthy container rolling update (#7583)
- Fix Docker container race condition during upgrades (#7565, fixes #7481)
- Fix deployment logs stopping unexpectedly mid-deployment (#7579)
- Fix deployment logs overlap with deployments indicator (#7580)
- Fix empty logs display and fullscreen coverage in logs viewer (#7564)
- Fix restart counter persistence and race condition (#7582)
- Prevent Coolify infrastructure images from being pruned during cleanup (#7586)
- Fix API response to return fqdn instead of non-existent domains attribute (#7546)
- Fix user token session not being set correctly for team
- Add proxy config filename validation to prevent path traversal (#7544)
Improvements
- Add Hetzner server provisioning API endpoints (#7562)
- Add autogenerate_domain API parameter for applications (#7515)
- Add Retry-After header to 429 rate limit responses
- Always show "Allow Public PR Deployments" option for better discoverability (#7587)
- Improve OpenAPI spec and add rate limit handling for Hetzner
- Remove dead server filtering code from scheduler for better performance (#7585)
- Remove duplicate getArchDockerInstallCommand() method (#7581)
Developer Experience
- Add deterministic UUIDs to development seeders for easier API testing (#7584)
What's Changed (Github)
- Add autogenerate_domain API parameter for applications by @andrasbacsai in #7515
- Fix API response to return fqdn instead of non-existent domains attribute by @andrasbacsai in #7546
- Add ValidProxyConfigFilename rule for dynamic proxy config validation by @andrasbacsai in #7544
- Bump version to 4.0.0-beta.454 by @andrasbacsai in #7545
- feat: add Hetzner server provisioning API endpoints by @andrasbacsai in #7562
- Fix empty logs display and fullscreen coverage by @andrasbacsai in #7564
- Fix Docker container race condition during upgrades by @andrasbacsai in #7565
- Fix deployment follow logs stopping mid-deployment by @andrasbacsai in #7579
- Remove duplicate getArchDockerInstallCommand() method by @andrasbacsai in #7581
- Fix deployment logs overlap with indicator by @andrasbacsai in #7580
- Fix restart counter persistence and add crash loop example by @andrasbacsai in #7582
- feat: Add deterministic UUIDs to dev seeders by @andrasbacsai in #7584
- Fix deployment marked as failed after healthy container rolling update by @andrasbacsai in #7583
- perf: Remove dead server filtering code from Kernel scheduler by @andrasbacsai in #7585
- Fix: Concurrent builds ignored & add deployment queue limit by @andrasbacsai in #7488
- Fix: Prevent coolify infrastructure images from being pruned by @andrasbacsai in #7586
- Always show PR deployments public option by @andrasbacsai in #7587
- v4.0.0-beta.454 by @andrasbacsai in #7563
Full Changelog: v4.0.0-beta.453...v4.0.0-beta.454
v4.0.0-beta.453
What's Changed
Security & Fixes
- Terminal stays connected when browser tab loses focus (#7538)
- Preview deployments now properly cleaned up on GitLab, Bitbucket, and Gitea (#7537, fixes #2610)
- Fixed SSH conflicts during concurrent scheduled tasks (#7503, fixes #6736)
- Fixed Nixpacks failing with null environment variables (#7493, fixes #6830)
- Deployment status now shows "In Progress" immediately when queued (#7487, fixes #6708)
- Fixed cleanup errors incorrectly marking successful deployments as failed (#7460, fixes #7439)
- Fixed service status stuck at "Starting" after stop (#7479)
- Fixed backup timeout not being applied during remote execution (#7476)
- Fixed Traefik warning not clearing after proxy restart (#7466)
- Fixed container "Restarting" status not displaying correctly (#7463)
- Fixed degraded sub-resource and mixed status states (#7461)
- Fixed Traefik email notifications with clickable server links (#7452)
- Fixed PostgREST showing in wrong category and empty Domains section (#7442)
- Fixed base directory path validation issues (#7437)
- Fixed port validation blocking advanced checkbox saves (#7435)
- Fixed Docker build args not working with service names (#7433)
- Fixed preview URL port template variable (#7527)
- Fixed logs not loading for single container services (#7509)
- Fixed Garage service TOML config and healthcheck (#7510)
New Services & Templates
- Added Garage (S3-compatible distributed storage) (#7508)
- Added RustFS (S3-compatible storage) (#7486)
- Added Fizzy (feedback widget) (#7468)
Improvements
- Added Arch Linux server support (#7531, #7408, fixes #4523)
- Added Docker image retention for application rollback support (#7504)
- Added colorized log levels with toggle (#7502)
- Added log search, download, and collapsible sections (#7484)
- Added collapsible option to logs component (#7495)
- Added runtime/buildtime properties to environment variables (#7470)
- Proxy restart now runs as background job with real-time logs (#7475)
- Dashboard performance improved with request-level caching (#7533)
- Renamed "unsend" to "usesend" in email configuration (#7526, fixes #7189)
- Renamed DOCKER_TOKEN/USERNAME to DOCKERHUB_TOKEN/USERNAME (#7432)
- Improved Advanced Settings helper text clarity (#7453)
- Improved PostgreSQL type docs link styling (#7494)
- Improved Sentinel update check scheduling (#7491)
- Decoupled storage check from Sentinel sync (#7454)
What's Changed (Github)
- Refactor: Replace DOCKER_TOKEN/USERNAME with DOCKERHUB_TOKEN/USERNAME by @andrasbacsai in #7432
- fix: bypass port validation when saving advanced checkboxes by @andrasbacsai in #7435
- Fix: Docker build args injection regex to support service names by @andrasbacsai in #7433
- Fix Traefik email notification with clickable server links by @andrasbacsai in #7452
- Improve Advanced Settings helper texts for clarity by @andrasbacsai in #7453
- Add Simple View toggle for logs by @andrasbacsai in #7457
- Fix complex status logic: degraded sub-resources and mixed states by @andrasbacsai in #7461
- Fix container status display: preserve Restarting status by @andrasbacsai in #7463
- Revert "Add Simple View toggle for logs" by @andrasbacsai in #7465
- fix: prevent cleanup exceptions from marking successful deployments as failed by @andrasbacsai in #7460
- Add Fizzy one-click service by @andrasbacsai in #7468
- Fix Traefik warning persistence after proxy configuration update by @andrasbacsai in #7466
- Add runtime and buildtime properties to environment variables by @andrasbacsai in #7470
- Decouple ServerStorageCheckJob from Sentinel sync by @andrasbacsai in #7454
- Fix: Pass backup timeout to remote SSH process by @andrasbacsai in #7476
- Fix: Service status stuck at starting after stop by @andrasbacsai in #7479
- Add RustFS one-click service by @andrasbacsai in #7486
- Set deployment status to IN_PROGRESS when queuing builds by @andrasbacsai in #7487
- Add log search, download, and collapsible sections by @andrasbacsai in #7484
- fix: move base directory path normalization to frontend by @andrasbacsai in #7437
- Fix PostgREST misclassification and empty Domains section by @andrasbacsai in #7442
- Remove webhook maintenance mode replay feature by @andrasbacsai in #7455
- Run proxy restart as background job with real-time logs by @andrasbacsai in #7475
- Style PostgreSQL type docs links to match service list by @andrasbacsai in #7494
- Refactor: Move sentinel update checks to ServerManagerJob and add tests for hourly dispatch by @andrasbacsai in #7491
- Add collapsible option to GetLogs component by @andrasbacsai in #7495
- Fix Nixpacks null environment variable parsing error by @andrasbacsai in #7493
- Add colorized log levels to runtime logs with toggle by @andrasbacsai in #7502
- Fix SSH multiplexing contention for concurrent scheduled tasks (#6736) by @andrasbacsai in #7503
- Add per-application Docker image retention for rollback by @andrasbacsai in #7504
- Add Garage as a one-click service by @andrasbacsai in #7508
- Fix logs not loading for single container services by @andrasbacsai in #7509
- Fix Garage service: TOML config and healthcheck by @andrasbacsai in #7510
- Rename unsend to usesend in configuration by @KMKoushik in #7526
- fix: add Arch Linux support for Docker installation by @murataslan1 in #7408
- fix: remove {{port}} template variable from preview URLs by @andrasbacsai in #7527
- Add Arch Linux server support and fix package sanitization by @andrasbacsai in #7531
- perf: Add request-level caching and indexes for dashboard optimization by @andrasbacsai in #7533
- fix: Add comprehensive PR cleanup to GitLab, Bitbucket, and Gitea by @andrasbacsai in #7537
- fix: Prevent terminal disconnects when browser tab loses focus by @andrasbacsai in #7538
- v4.0.0-beta.453 by @andrasbacsai in #7467
New Contributors
- @KMKoushik made their first contribution in #7526
- @murataslan1 made their first contribution in #7408
Full Changelog: v4.0.0-beta.452...v4.0.0-beta.453
v4.0.0-beta.452
What's Changed
Security & Fixes
- Fixed Traefik proxy startup issues with null versions and network filtering (#7400)
- Fixed service name parsing issues when using hyphens (#7399)
- Fixed version downgrade prevention with improved cache validation (#7396)
- Fixed webhook notification settings migration conflict (#7393)
- Fixed Docker database start commands compatibility across versions (#7390, #6807)
- Fixed duplicate environment variables in buildtime.env and Nixpacks plan overrides (#7373)
- Fixed incorrect Caddy proxy config file path display (#6722)
- Fixed Livewire snapshot error during database restore (#7385, fixes #7335)
- Fixed Beszel realtime monitoring feature (#7366)
- Fixed Appwrite too many redirects error (#7364)
Improvements
- Improved manual update process with better user feedback (#7398)
- Improved new resource page UI layout and styling (#7291)
- Added color-coded log highlighting based on log level (#7288)
- Added Postgresus to predefined Docker networks by default (#7367)
What's Changed (Github)
- fix: prevent Livewire snapshot error in database restore by @andrasbacsai in #7385
- Feat:(service) Add postgresus to predefined docker networks by default by @ShadowArcanist in #7367
- fix(ui): incorrect caddy proxy config file path on proxy page by @ShadowArcanist in #6722
- fix: prevent duplicate environment variables in buildtime.env and support nixpacks plan variable overrides by @andrasbacsai in #7373
- fix(docker): replace deprecated --time flag with -t for full compatibility across Docker versions by @ShadowArcanist in #6807
- Fix:(service) Appwrite too many redirects error by @ShadowArcanist in #7364
- Fix:(service) Beszel realtime feature not working by @ShadowArcanist in #7366
- fix(docker): migrate database start actions from --time to -t flag by @andrasbacsai in #7388
- Revert "fix(docker): migrate database start actions from --time to -t flag" by @andrasbacsai in #7389
- feat(ui): Logs color highlight based on log level by @ShadowArcanist in #7288
- fix(docker): migrate database start actions from --time to -t flag by @andrasbacsai in #7390
- feat(ui): Improve new resource page UI layout and styling by @ShadowArcanist in #7291
- fix: resolve webhook notification settings migration conflict by @andrasbacsai in #7393
- Fix: Version downgrade prevention with cache validation by @andrasbacsai in #7396
- Improve manual update process with better user feedback by @andrasbacsai in #7398
- Fix: Fragile service name parsing with hyphens by @andrasbacsai in #7399
- Fix: Traefik proxy startup issues by @andrasbacsai in #7400
- v4.0.0-beta.452 by @andrasbacsai in #7386
Full Changelog: v4.0.0-beta.451...v4.0.0-beta.452
v4.0.0-beta.451
What's Changed
Security & Fixes
- Enhanced security by validating and escaping database names, file paths, and proxy configuration filenames to prevent command injection (#7375)
- Fixed Docker command failures on non-root servers and proxy network race conditions (#7368, fixes #7362)
- Fixed path duplication in SERVICE_FQDN and SERVICE_URL when updating service FQDN (#7370, fixes #7363)
- Fixed configuration change detection for build settings to properly show restart notification (#7371)
Improvements
- Enhanced environment variable handling with better password field support and shared variable management
- Improved build time variable checkbox behavior based on environment type
- Reduced excessive logging in cleanup commands for cleaner output (#7356)
- Improved version release automation workflow with GitHub sync functionality
- Better error handling and output capturing during Git operations
What's Changed (Github)
- reduce: minimize logging in cleanup commands by @andrasbacsai in #7356
- fix: resolve Docker validation race conditions and sudo prefix bug by @andrasbacsai in #7368
- fix: prevent SERVICE_FQDN/SERVICE_URL path duplication by @andrasbacsai in #7370
- fix: trigger configuration changed detection for build settings by @andrasbacsai in #7371
- fix: enhance security by validating and escaping database names, file paths, and proxy configuration filenames by @andrasbacsai in #7375
- v4.0.0-beta.451 by @andrasbacsai in #7369
Full Changelog: v4.0.0-beta.450...v4.0.0-beta.451
v4.0.0-beta.450
What's Changed
Security & Fixes
- Fixed database restore modal not closing properly after backup operations (#7345, fixes #7335)
- Fixed installation failures caused by CDN redirect handling in curl commands (#7349, fixes #7348)
- Fixed proxy startup failures due to bash syntax errors in control structures (#7353, fixes #7346)
Improvements
- Added Docker build cache preservation toggles to optimize build performance (#7352, fixes #7040)
- New option to skip automatic Dockerfile ARG injection
- New option to exclude SOURCE_COMMIT from build context
- Applies to both Dockerfile and Docker Compose buildpacks
What's Changed (Github)
- fix: resolve uncloseable database restore modal by @andrasbacsai in #7345
- fix: add -L flag to curl commands for CDN redirects by @andrasbacsai in #7349
- fix: add bash control structure keywords to sudo processing by @andrasbacsai in #7353
- feat: add Docker build cache preservation toggles by @andrasbacsai in #7352
- v4.0.0-beta.450 by @andrasbacsai in #7351
Full Changelog: v4.0.0-beta.449...v4.0.0-beta.450
v4.0.0-beta.449
What's Changed
Fixes
- Preserve Docker build cache by excluding dynamic variables (#7339, fixes #7040)
- Show shared env scopes dropdown even when no variables exist (#7342)
- Add authorization checks for environment and project views
New Features
Improvements
- Improved variable scope handling in docker entrypoint parsing (#7341)
What's Changed (Github)
- fix: preserve Docker build cache by excluding dynamic variables by @andrasbacsai in #7339
- feat: custom docker entrypoint by @adiologydev in #7097
- refactor: fix variable scope in docker entrypoint parsing by @andrasbacsai in #7341
- feat: developer view for shared environment variables by @adiologydev in #7091
- fix: show shared env scopes dropdown even when no variables exist by @andrasbacsai in #7342
- v4.0.0-beta.449 by @andrasbacsai in #7340
Full Changelog: v4.0.0-beta.448...v4.0.0-beta.449
v4.0.0-beta.448
What's Changed
- v4.0.0-beta.448 by @andrasbacsai in #7334
Full Changelog: v4.0.0-beta.447...v4.0.0-beta.448
v4.0.0-beta.447
What's Changed
New Features
- Restore database backups directly from S3 storage (#7085)
- Environment variable autocomplete with
{{ scope.variable }}syntax (#7282)
Fixes
- Correct webhook notification settings migration and model schema (#7333)
What's Changed (Github)
- feat: S3 restore by @andrasbacsai in #7085
- feat: add environment variable autocomplete component by @andrasbacsai in #7282
- fix: correct webhook notification settings migration and model by @andrasbacsai in #7333
- v4.0.0-beta.447 by @andrasbacsai in #7332
Full Changelog: v4.0.0-beta.446...v4.0.0-beta.447
v4.0.0-beta.446
fix db migration issues
What's Changed
- fix: handle migration rename errors for v444→v445 upgrades by @andrasbacsai in #7320
- v4.0.0-beta.445 by @andrasbacsai in #7321
Full Changelog: v4.0.0-beta.445...v4.0.0-beta.446