Coolify - 一個開源的自託管 Heroku - Netlify 替代方案
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 愛好者 我們是一羣 Github 愛好者,專注分享有價值、有趣的開源項目和學習資料,包括 Python、Golang、Java、Rust、AI、前端、運維、數據分析、大數據、雲計算、Kubernetes、Service Mesh 等領域資源。
本文由 Readfog 進行 AMP 轉碼,版權歸原作者所有。
來源:https://mp.weixin.qq.com/s/5RKYlUTLFLrs5RUEhr85_g