Coolify - 一个开源的自托管 Heroku / Netlify 替代方案

开源
Coolify 是一种可自我托管的综合解决方案,只需单击几下即可托管你的应用、数据库或其他开源服务。

Coolify 是一种可自我托管的综合解决方案,只需单击几下即可托管你的应用、数据库或其他开源服务。它是 Heroku 和 Netlify 的一个替代方案。

通过 Coolify 可以部署很多应用、数据库、服务等。

  • 部署 Static、NodeJS、Svelte、React、Vue、Next、Nuxt、Astro、PHP、Rust 等,可以使用自动反向代理和免费 SSL 证书轻松部署应用程序!
  • 一键安装 MongoDB、MySQL、PostgreSQL、CouchDB、RedisDB 实例即可在本地或互联网上使用!
  • 需要自己的 WordPress、Ghost Plausible Analytics、NocoDB、BitWarden/VaultWarden、LanguageTool、N8n、VSCode Server 等服务?没问题,只需点击一下!
  • 无论你托管什么服务,都可以将其部署在任何地方,本地 Docker 引擎、远程 Docker 引擎 (WIP) 或 Kubernetes (WIP)。

安装

要安装 Coolify,需要满足以下资源的最低要求,Coolify 在本地为应用程序构建镜像,这是一个 CPU 密集型的动作,所以需要更多的 CPU 资源。

  • 2CPU
  • 2GB 内存
  • 30+GB 的镜像存储空间

其他资源取决于应用的要求,例如,WordPress 与 Redis 数据库需要不同的 CPU/内存。另外目前,只支持 Ubuntu 服务器。

要安装 Coolify 最简单的方式就是直接执行下面的命令即可一键安装:

wget -q https://get.coollabs.io/coolify/install.sh -O install.sh; sudo bash ./install.sh -f

如果想手动安装则需要首先在你的服务器上安装 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_SENTRY_DSN=https://9e7a74326f29422584d2d0bebdc8b7d3@o1082494.ingest.sentry.io/6091062 # Sentry 错误报告的 DSN 地址,不是强制性的。
COOLIFY_IS_ON=docker # Coolify 部署的位置,目前,仅支持 docker。
COOLIFY_WHITE_LABELED=false # 会删除 Coolify 实例的“商标”。
COOLIFY_WHITE_LABELED_ICON= # 登录/注册页面上要替换的图标。
COOLIFY_AUTO_UPDATE=false # 它会在后台自动更新你的 Coolify 实例。

配置完成后可以使用 Docker 进行一键启动:

docker run -tid --env-file .env -v /var/run/docker.sock:/var/run/docker.sock -v coolify-db-sqlite coollabsio/coolify:latest /bin/sh -c "env | grep COOLIFY > .env && docker compose up -d --force-recreate"

使用

安装后,第一个注册用户是 Coolify 实例的 root/admin 用户,它将可以查看/更改所有部署的资源、访问系统范围的配置、一键更新过程等。其他用户都不会访问系统范围的配置,只能看到他们团队的资源。

此外每个注册用户都会自动拥有自己的团队,每个团队只能访问自己的资源。你可以注册任意数量的团队并邀请任意数量的用户加入。

然后 Git Sources 定义了可以在哪里获取/拉取你的应用代码。这些来源可以用于:

  • 在你的 Git 提供商处创建应用(例如 GitHub App、GitLab App)。
  • 提供通过令牌/ssh 密钥访问你的仓库。
  • 克隆你的应用代码。
  • 为自动部署设置 webhook,等等。

无论你托管什么服务,都可以将其部署在任何地方,本地 Docker 引擎、远程 Docker 引擎或 Kubernetes。

要想创建应用就需要先去管理 Git Source,如果要创建一个数据库实例,可以直接选择想要部署的数据库类型:

然后要配置一个部署的目的地,比如本地 Docker:

然后根据自己的需求配置数据库:

配置完过后点击右上角的 Start Database 即可,如果想要通过公网进行访问,记得勾选 Set it public,然后我们就可以通过上面的数据库地址去访问这个服务了。

最后要创建 Service 也是一样的操作,直接点击添加按钮,选择需要的服务,然后进行配置启动即可:

比如我这里部署一个 Uptime Kuma 的应用,只需要点击下这个应用,即可:

这个服务启动后我们就可以通过 http://cl3mj6djx00003g6amc3izaze.demo.coolify.io 进行访问了:

关于 Coolify 的更多使用可以参考官方网站 https://coolify.io/ 了解更多信息。

Git 仓库:https://github.com/coollabsio/coolify。

责任编辑:姜华 来源: Github爱好者
相关推荐

2022-06-17 10:04:41

Coolify开源Heroku

2021-09-29 15:49:37

Exchange开源用户开发者

2022-04-13 09:26:47

PeergosGoogle开源

2022-03-24 10:54:33

Piwigo开源

2022-12-26 07:40:00

Heroku替代品dynos

2022-06-29 15:40:28

MinecraftMinetest开源

2017-02-27 15:30:39

2023-05-04 07:16:50

ChatGPT开源

2021-09-04 15:21:39

ZulipSlack开源

2021-12-29 18:18:59

开源MedusaShopify

2020-11-25 13:48:04

LazPaintPaint.NET开源

2023-02-06 06:21:53

BookStack开源

2020-09-09 14:22:48

数据中心

2022-12-03 15:53:46

开源Linux

2023-03-29 13:13:34

2023-05-30 16:02:34

云托管云计算自托管

2023-05-17 08:00:00

ChatGPT人工智能

2014-08-18 09:59:04

2020-08-10 08:30:23

开发软件开源

2024-04-02 09:42:39

点赞
收藏

51CTO技术栈公众号