安装脚本会直接通过管道执行,建议先查看 scripts/install.sh 再运行;README 未说明默认端口和依赖版本,需查阅官方安装文档确认要求。
coolify
coollabsioApache-2.0活跃维护自托管的开源 PaaS,能在自己的服务器上一键部署静态站点、数据库、全栈应用和 360 多种服务,替代 Vercel、Heroku 和 Netlify。
An open-source, self-hostable PaaS alternative to Vercel, Heroku & Netlify that lets you easily deploy static sites, databases, full-stack applications and 360+ one-click services on your own servers.
curl -fsSL https://cdn.coollabs.io/coolify/install.sh | bashREADME 未说明具体硬件配置,只要求服务器支持 SSH 连接,可以是 VPS、裸金属服务器或树莓派;推荐用一台服务器运行 Coolify,另用一台或多台服务器部署资源。
开源可自托管的 PaaS,让你在自己的服务器上部署应用、数据库和服务
自托管的开源 PaaS,能在自己的服务器上一键部署静态站点、数据库、全栈应用和 360 多种服务,替代 Vercel、Heroku 和 Netlify。
核心能力
- 从 GitHub、GitLab、Bitbucket 或 Gitea 构建并部署应用
- 支持 Nixpacks、Railpack、Dockerfile、Docker Compose 和预构建镜像
- 提供 360 多个一键部署服务,并自动生成凭据
- 每次 Git push 自动部署,并支持 PR 预览和回滚
- 配置自定义域名、自动 HTTPS 证书和反向代理
容易踩的坑
- v4.7.2最新正式版2026-11-09 · 2026-11-09 17:21 UTC
Security
- Restricted the
RedeployandStopactions of an application destination to the servers that the application runs on
Changed
- Names in the top breadcrumb, which now link to their page
- The section name, such as
Servers, opens the list page of the section - The project, environment, resource, server, storage, source, destination, and tag names open their own page
- The arrow next to a name still opens the switch list
- The section name, such as
Fixed
- Closed root account setup window right after a fresh install, so the first account could not be created on the
Registerpage - Image scans of large images that stopped because the scanner ran out of memory
- The scanner frees memory sooner when it gets close to its limit. Set a higher limit with
Scanner memory limiton theVulnerabilitiespage of a server, or withimage_scan_memory_mbin the server image scanning API. The default stays 1 GB
- The scanner frees memory sooner when it gets close to its limit. Set a higher limit with
- Missing scanner disk usage on the
Image Scanningpage of a server and in thescanner_disk_used_bytesAPI field- The
Delete scanner databutton also stays hidden now after the scanner data is deleted
- The
- The
Nightlyupdate channel was hard to find, because only theChannellist inSettings>Updatesnamed it (#12492)- On the
Stablechannel,Settings>Updatesshows a hint aboutNightly. The upgrade dialog shows the update channel and links toSettings>Updates
- On the
- Restricted the
- v4.7.12026-11-09 · 2026-11-09 14:01 UTC
查看更新说明
Added
- The reason of a failed image scan in a
Show error logsection on theSecuritypage and in the Laravel log- The error log shows the failed step, its exit code, and the end of the command output. Only users who can change the resource or server see it
Fixed
- Failed image scans on self-hosted instances, because the scanner templates were missing from the Coolify image
- Ignored custom container labels and wildcard domains in maintenance mode (#12498)
- With editable container labels, maintenance mode uses the Traefik router rules and the Caddy site addresses of the labels
- Showed an error on the
Vulnerabilitiespage - Showed warning callouts in the accent color instead of yellow when a custom theme is active
- The reason of a failed image scan in a
- v4.7.02026-11-09 · 2026-11-09 11:38 UTC
查看更新说明
Breaking Changes
- Cancelled the older queued webhook deployments of an application by default when a newer push arrives, so only the latest commit is built (#10921, #7678)
- It works per application, pull request and server
Advanced>Deploymentandis_auto_cancel_queued_deployments_enabledin the applications API turn it off- Manual, API, restart and rollback deployments are never cancelled
- An opt-in setting,
is_auto_cancel_building_deployments_enabledin the API, also stops an older webhook deployment that is still building, a deployment that started to replace containers always finishes cancel_previous(none,queuedorbuilding) on/api/v1/deployand the MCPdeploytool cancels the older webhook, API and MCP deployments, the default isnone
- Limited the cloud provider token API to team admins and owners
- Other members get
403
- Other members get
- Moved the Resend sender to the new
resend_from_addressandresend_from_namefields, API clients must use the new fields- A migration copies the current values
Security
- Applied the limits of API tokens to more permission checks
- A message explains when a token limit blocks a change
- Built team invitation links from the instance URL instead of the request host, when no instance domain is set
- Checked that members with access grants can use the selected server and the team credentials
- A new, cloned or migrated resource needs a server that the member can use, the localhost server needs an instance admin
- Server lists show only the servers that the member can use
- Team private keys, GitHub Apps, Gitea Apps and new S3 storages of backup schedules need write access on the whole team, also through the API
- A message explains when write access on the whole team is needed
- Checked the deploy permission before a deploy through the API creates a preview or changes its image tag
- Ended terminal sessions when access to the server is lost
- Enforced fixed SSH connection options on every connection, also for health checks
- Generated new SSH keys as Ed25519 and validated private keys more strictly
- Hardened SMTP and terminal connections
- SMTP hosts are validated, and Coolify connects only to the checked address
- The error message explains why an SMTP host is refused
- Limited the server data in the application, service, and database API responses to tokens that cover the whole team
- Removed the server details from the response of the
get_serviceMCP tool - Kept personal data and credentials out of audit events
- The audit events of a deleted user are anonymized
- Kept stored private keys out of the browser
- Kept the Sentinel token out of process arguments
- Sentinel reads it from an env file
- Limited API clients that keep failing to 30 failed requests per minute for one token or IP
- More failed requests get
429,API_FAILED_REQUEST_RATE_LIMITsets the limit - The team of the token gets one notification a day when the token reaches the limit
- More failed requests get
- Pinned the SSH host key of a server on the first connection, the team gets a notification when it changes
SSH_HOST_KEY_CHECKINGsets the mode:warn,enforceoroff
- Pinned the SSH host keys of Git hosts across deployments
- Coolify shows the published host keys of GitHub, GitLab and Bitbucket
- Restricted preview changes, rollbacks and repository URL changes
- Opening a preview, changing its pull request URL, Git type or Docker tag, or choosing a commit through the API needs write access, a deploy token can only redeploy an existing preview
- A rollback goes only to a listed rollback image or a successful production deployment
- A new
git_repositoryof an application is validated like in the UI - The
docker_tagof/api/v1/deployis validated like in the preview API
- Validated webhook URLs, limited DNS lookups and tightened the
- Cancelled the older queued webhook deployments of an application by default when a newer push arrives, so only the latest commit is built (#10921, #7678)
- v4.6.02026-11-02 · 2026-11-02 16:01 UTC
查看更新说明
Breaking Changes
- Require the new
deleteability, orroot, for every delete through the API and the MCP server, an API token withwritealone can no longer delete resources, environment variables, storages, backups, scheduled tasks or tags, or detach a tag
Security
- Harden the CI workflows
- Require every action to be pinned to a full-length commit SHA, with an Actions setting on GitHub that enforces it
- Lock every action and the actions it calls to a commit in
.github/workflows/actions.lock, together with the IDs of its owner and repository, which a commit SHA alone does not check - Require every workflow to use the lockfile, with an Actions policy on GitHub that enforces it
- Keep the Docker Hub credentials and the CDN token in the
releaseenvironment, which only the branches that release can use - Run without the GitHub Actions cache, layer caches and cached tool binaries, so no run restores what another run wrote
- Grant every job the least permissions it needs and state the reason for every write permission
- Keep the tokens that delete images in the
cleanupenvironment, which onlymaincan use - Fix every finding of jactionlint pedantic
- Refuse to update, force-push or delete the git tag of a release, with a tag protection rule on GitHub
- Refuse to delete or force-push
main,next, release and maintenance branches, with branch protection rules on GitHub - Hide locked environment variable values in the resource lists of
GET /api/v1/resourcesandGET /api/v1/projects/{uuid}/{environment}, like the other endpoints already do - Require an instance admin to disable the API, or to enable or disable the MCP server, through the API
- Route only the Reverb WebSocket path
/app/through the domain of the Coolify dashboard, the generated Traefik and Caddy configurations no longer expose the Reverb HTTP API under/apps - Require the
deployability for the registry check and the registry logout of the API and the MCP server, like the registry login - Keep the file names of PostgreSQL init scripts inside the init script directory
- Protect archive branches from updates, deletions and force-pushing, with branch protection rules on GitHub
Added
- Limit a team member or an API token to selected projects, environments or resources, with the access levels read, read sensitive, deploy, write, delete and root, where a higher level includes the lower ones
- Give an API token access to the whole team or to selected projects, environments or resources, a token never gets more access than its owner and stops working when its owner loses that access
- Set the access of a member when you invite them, or later with a preset (viewer, developer, operator or full access) or per scope
- Show members and tokens limited to some scopes only the projects, environments, resources, deployments and search results they can access, and keep them out of the team-wide pages and API endpoints
- Set a member back to read-only to clear their grants and revoke their API tokens
- See a summary of the access of every member under their email in the members list
- Choose the update channel of an instance on the update page: stable, preview with betas and release candidates, nightly with a warning that breaking changes are possible, or a custom image such as
pr-1234 - Publish prereleases from
nextand the release branches, tagged like4.6.0-beta.1, and the movingpreviewtag - Publish a nightly version twice a day, tagged like
4.6.0-alpha.0.20261026.1, with the movingnightlytag and the nightly channel of the CDN, fromnextor from the release branch while one is in progress - Keep the updates of the old channel after a switch to a more stable channel, until the stable release of the installed version is out
- Install the newest preview or nightly version with
install.sh --previeworinstall.sh --nightly, which also switches the update channel of the instance - Switch the update ch
- Require the new
- v4.5.32026-10-28 · 2026-10-28 14:09 UTC
查看更新说明
Fixes
- Kept the Dockerfile
HEALTHCHECKof existing applications. Since v4.5.1, the Coolify healthcheck replaced it. - Fixed Docker Compose builds that failed with "required variable is missing a value" when a required variable was set only for runtime. (#12363)
- Fixed Railpack builds that failed when they started at the same time as another build.
- Removed orphaned SSH connection processes that collected on the Coolify host.
- Fixed server validation, which now continues over SSH when the Hetzner API call fails.
- Stopped retries of HTTP requests that timed out after they were sent, so the same action did not run two times.
- Fixed MCP tokens with the
read:sensitivepermission, which did not see the commands and configuration of applications and databases.
Improvements
- Updated the Coolify helper image to 1.0.19.
Full Changelog: https://github.com/coollabsio/coolify/compare/v4.5.2...v4.5.3
- Kept the Dockerfile
用户点评
登录用户的真实使用记录,可按版本和硬件筛选还没有人点评。第一个说出真实体验的人最有价值。
Coolify
An open-source platform to deploy applications, databases, and services on your own servers.
Open source & free forever, backed by our philosophy.
Website · Documentation · Cloud · Discord · Community
What is Coolify?
Coolify is an open-source and self-hostable alternative to Heroku, Netlify, and Vercel. It helps you manage servers, applications, and databases on your own hardware. You only need an SSH connection.
You can use a VPS, a bare-metal server, a Raspberry Pi, or any other server that accepts SSH connections. Coolify gives you the convenience of a cloud platform while you keep control of your infrastructure.
Your configurations stay on your servers. If you stop using Coolify, your running resources continue to work and remain manageable.
What can Coolify do?
- Deploy any application: Build from GitHub, GitLab, Bitbucket, or Gitea with Nixpacks, Railpack, Dockerfile, Docker Compose, or a prebuilt Docker image.
- Run databases and services: Deploy managed databases and more than 360 one-click services with persistent storage and generated credentials.
- Automate deployments: Deploy on every Git push, create pull-request previews, call deployment webhooks, and roll back to retained application images.
- Manage networking: Configure custom domains, automatic HTTPS certificates, reverse proxies, health checks, and container networks.
- Operate your infrastructure: Manage multiple servers, inspect deployment and runtime logs, open container terminals, and monitor resource status.
- Protect your workloads: Configure database and storage backups, scheduled tasks, environment variables, secrets, and notifications.
- Integrate with your workflow: Manage resources through the dashboard, API, CLI, MCP, and team-based access controls.
Quick start
Install Coolify on a supported server with one command:
curl -fsSL https://cdn.coollabs.io/coolify/install.sh | bash
Read the installation guide for requirements and detailed instructions. You can also review the installation script before you run it.
Self-hosted or Cloud
| Self-hosted | Coolify Cloud |
|---|---|
| Install Coolify on your own server. | Use a Coolify instance that we maintain. |
| Control and maintain the complete platform. | Get high availability and less maintenance. |
| Free and open source. | Paid service with email notifications and additional support. |
The recommended self-hosted setup uses one server for Coolify and one or more servers for deployed resources. If you do not want to maintain the Coolify server, use Coolify Cloud. See coolify.io for current pricing.
Community and support
- Read the documentation.
- Join the community on Discord.
- Ask questions in GitHub Discussions.
- Read the contribution guide before you submit a change.
- Review the code of conduct.
- Contact the team through the support page.
Donations
To stay completely free and open-source, with no feature behind the paywall and evolve the project, we need your help. If you like Coolify, please consider donating to help us fund the project's future development.
Thank you so much!
Huge Sponsors
- Ginernet - Hosting powerful servers in Spain
- SerpAPI - Google Search API — Scrape Google and other search engines from our fast, easy, and complete API.
- MVPS - Cheap VPS servers at the highest possible quality
- ScreenshotOne - Screenshot API for devs
- PrivateAlps - Cloud Services Provider, VPS, servers infrastructure for people who care about privacy and control
- Seibert Group - Boost productivity company-wide with AI agents like Claude Code
- Contabo - Cloud VPS & dedicated servers at unbeatable prices
Big Sponsors
- Vanaways - New vans for sale and lease across the UK
- Cloudways - Managed cloud hosting platform by DigitalOcean
- ByteBase - Database CI/CD and Security at Scale
- Ramnode - High Performance Cloud VPS Hosting
- 23M - Your experts for high-availability hosting solutions!
- Macarne - Best IP Transit & Carrier Ethernet Solutions for Simplified Network Connectivity
- Hetzner - Server, cloud, hosting, and data center solutions
- Logto - The better identity infrastructure for developers
- Supadata - Scrape YouTube, web, and files. Get AI-ready, clean data for your next project.
- Tolgee - The open source localization platform
- ArcJet - Advanced web security and performance solutions
- SupaGuide - Your comprehensive guide to Supabase
- CodeRabbit - Cut Code Review Time & Bugs in Half
- Convex - Convex is the open-source reactive database for web app developers.
- GoldenVM - Premium virtual machine hosting solutions
- Comit International - New York Times award–winning contractor!
- Compai - The open source compliance automation platform that does everything you need to get compliant, fast. Open source alternative to Drata & Vanta.
- Tigris - Modern S3 Alternative
- Blacksmith - Infrastructure automation platform
- JobsCollider - 30,000+ remote jobs for developers
- Darweb - Design. Develop. Deliver. Specialized in 3D CPQ Solutions for eCommerce.
- Hostinger - Web hosting and VPS solutions
- Mobb - Secure Your AI-Generated Code to Unlock Dev Productivity
- Ubicloud - Open source cloud infrastructure platform
- PFGLabs - Build Real Projects with Golang
- JuxtDigital - Digital PR & AI Authority Building Agency
- SaasyKit - Complete SaaS starter kit for developers
- American Cloud - US-based cloud infrastructure services
- Greptile - The AI Code Reviewer
- VPSDime - Cheap VPS Hosting - 4GB for $5/month
- dataforest Cloud - Deploy cloud servers as seeds independently in seconds. Enterprise hardware, premium network, 100% made in Germany.
- ISHosting - Hosting and VPS solutions
- NodePlus.ai - AI that reads every system your business runs on
Small Sponsors
...and many more at GitHub Sponsors