简介
Coolify是一种功能强大的自托管综合解决方案,旨在简化应用、数据库以及开源服务的托管流程。它为开发者提供了一个高效、便捷的平台,只需几步操作即可完成复杂的部署任务。这种工具特别适合个人开发者、小型团队以及希望降低托管成本的企业使用。

Coolify被广泛认为是Heroku和Netlify的替代方案。这两个平台以简化部署和托管流程而闻名,但Coolify在自托管领域提供了更大的灵活性和控制权。通过Coolify,用户可以轻松地实现自动反向代理,确保所有流量安全地传输,同时还支持免费SSL证书的配置,为应用的安全性提供了额外的保障。
此外,Coolify支持部署多种应用和服务,涵盖了主流的开发框架和技术栈。以下是部分支持的内容:
- 前端框架:Static、Svelte、React、Vue、Next、Nuxt、Astro等。
- 后端技术:NodeJS、PHP、Rust等。
- 数据库服务:MongoDB、MySQL、PostgreSQL、RedisDB等。
无论是创建一个静态网站、搭建复杂的后端服务,还是部署数据库实例,Coolify都能帮助用户快速完成,从而节省时间和精力。这种多样化的支持使其成为一个极具吸引力的工具,帮助开发者实现各种技术需求。
部署
部署Coolify相对简单,但在开始之前需要确保你的服务器满足其最低资源要求。这些要求是为了保证Coolify能够在构建镜像时高效运行,因为镜像构建是一个对CPU资源要求较高的过程。以下是最低资源规格:
- 2核CPU:保证足够的计算能力以支持镜像构建和应用运行。
- 2GB内存:为运行Coolify以及应用实例提供足够的内存空间。
- 30GB存储:用于存储镜像、应用数据以及其他相关文件。
在满足硬件要求后,你可以选择两种安装方式:一键安装和手动安装。
一键安装
Coolify提供了一个简单的安装脚本,用户只需运行以下命令即可快速完成安装:
wget -q https://get.coollabs.io/coolify/install.sh -O install.sh; sudo bash ./install.sh -f这种方式非常适合新手用户或希望快速体验Coolify功能的人。安装脚本会自动完成Docker配置、镜像拉取以及Coolify实例的启动。

手动安装
对于需要更多控制或自定义配置的用户,可以选择手动安装。手动安装过程中需要完成以下步骤:
- 首先确保服务器已安装Docker Engine v20.10+版本。
- 创建一个
.env文件,用于定义Coolify运行所需的环境变量。例如:
COOLIFY_APP_ID= # 一个随机的 UUID,用于区分已安装的实例。
COOLIFY_SECRET_KEY= # 用于加密各种私人数据,长度必须为 32 个字符。
COOLIFY_DATABASE_URL=file:../db/prod.db # SQLite 数据库 URL,必须在 ../db 下。
COOLIFY_IS_ON=docker # Coolify部署的位置,目前仅支持Docker部署。完成配置后,用户可以通过Docker命令启动Coolify实例:
docker run -tid --env-file .env -v /var/run/docker.sock:/var/run/docker.sock coollabsio/coolify:latest /bin/sh -c "env | grep COOLIFY > .env && docker compose up -d --force-recreate"无论选择哪种安装方式,Coolify都可以顺利部署并启动。在部署完成后,用户可以通过浏览器访问实例的管理界面,开始托管应用和服务。

使用
Coolify的使用过程非常灵活,且对于不同类型的用户提供了针对性的功能和权限管理。无论是个人开发者还是团队协作,都可以通过Coolify高效地管理和部署应用及服务。
管理员权限
在Coolify中,第一个注册的用户将自动成为实例的管理员(root用户)。管理员拥有系统范围内的最高权限,可以访问所有资源、进行配置更改以及管理部署流程。此外,管理员还可以一键更新Coolify实例,确保系统始终处于最新状态。这种权限设计让管理员能够全面掌控整个系统,同时便于维护和优化部署环境。
团队管理
Coolify支持用户创建团队并邀请其他成员加入。每个团队都是独立的实体,只能访问自己创建或分配的资源。这种隔离机制保证了数据和服务的安全性,同时提高了协作效率。用户可以根据项目需求创建多个团队,并灵活分配资源与权限,为不同的开发任务提供支持。

Git Source管理
Coolify允许用户通过Git Source管理应用的代码来源,提供了多种集成功能以简化代码部署流程:
- 关联Git提供商(如GitHub、GitLab)以便直接创建应用。
- 使用令牌或SSH密钥访问私有代码库。
- 设置Webhook以实现自动化部署,当代码发生更改时可以触发自动构建和部署流程。
通过这些功能,开发者可以轻松管理代码的拉取、构建和更新,确保应用版本始终保持一致。
创建数据库实例和服务
Coolify还支持创建各种数据库实例和服务,这一功能对于部署复杂的应用非常重要。用户可以选择需要的数据库类型(如MongoDB、MySQL、PostgreSQL等),并根据实际需求进行配置。配置完成后,只需点击启动按钮即可运行数据库实例。

此外,Coolify还允许用户将服务设置为公开状态,使其可以通过公网访问。这对于托管API服务或共享资源非常有用。
通过这些功能,Coolify不仅简化了应用和数据库的部署流程,还为团队协作和资源管理提供了强大的支持,帮助开发者高效完成项目部署。