Post Stats

此文章有 3001 个字符, 大约要花 13 分钟阅读

今天介绍一个极大扩展开发者自部署能力的项目: Coolify


官方介绍:

What is Coolify?

Coolify is an all-in one PaaS that helps you to self-host your own applications, databases or services (like WordPress, Plausible Analytics, Ghost) without managing your servers, also known as an open-source & self-hostable Heroku / Netlify / Vercel alternative.

Coolify 是一款一体化 PaaS,可帮助您自行托管自己的应用程序、数据库或服务(如 WordPress、Plausible Analytics、Ghost),而无需管理您的服务器,也被称为开源和自托管的 Heroku / Netlify / Vercel 替代品。


品鉴:

实际上我们可以使用Coolify的功能:

  1. 在自己的服务器上托管应用
    • appwrite/supabase Baas数据管理
    • appsmith 低代码
    • minio AWS S3 替代
    • Gitea 自托管git
    • docker Registry 镜像自托管
    • WordPress
    • ...更多应用
  2. 托管部署数据库MysqlPostresMariaDBMongoDBClickHouse
  3. 托管部署Web Server官方示例
  4. Coolify借助Traefik为所有托管程序提供Let’s Encrypt证书,让我们的服务具备https
  5. 在多台机器上部署Coolify,通过一个主Coolify统一管理。
  6. 更多的其他云能力集成。

安装

这里我使用 3 台纯净的 CentOS Stream 9 64bit 的国内云服务器。1 台 2C 4G, 2 台 2C 2G

curl -fsSL https://cdn.coollabs.io/coolify/install.sh | bash

这里首次安装直接使用官方脚本尝试,安装失败。


安装脚本失败原因

  1. 国内云服务器无法直接安装 docker-ce国内云服务器安装docker-ce
  2. 安装脚本会拉取 ghcr.ioquay.io 的镜像,需要替换加速的镜像地址。
  3. 国内云服务器拉取官方镜像也需要替换加速地址。

安装失败解决

第一项请跳转到 国内 Centos 云服务器安装 docker-ce 解决。 第二项和第三项看起来是一个问题,但是解决起来是两个方案。

解决 ghcr.io 和 quay.io 的镜像问题

这两个源地址是写在 install.sh 脚本所拉取的 docker-compose.yml 中的

要解决这个问题就需要在脚本下载 yml 之后,更改其中的 image: 配置的地址。

但是每次运行 install.sh 和起附带的 upgrade.sh 脚本中都会重新覆盖 yml 文件。

我们需要删除对应的四行 $CDN。

然后去 upgrade.sh 同样删除对应的代码。

之后,更改 yml 文件的地址指向,这里我们选择 daocloud 进行加速。

quay.io 更改为 quay.m.daocloud.io, ghcr.io对应进行修改为 ghcr.m.daocloud.io 即可。

解决 docker 官方源镜像问题

官方镜像的配置则需要更改docker全局配置文件。

配置文件通常在这个目录下:

vim /etc/docker/daemon.json

在JSON中增加:

{
  "registry-mirrors": [
    "https://docker.m.daocloud.io  "
  ]
}

保存后执行命令:

sudo systemctl restart docker # 重启docker服务
sudo docker info # 检查配置是否成功

解决以上问题后直接运行本地化的安装脚本:/data/coolify/source/install.sh 即可安装成功。