自己推行 Drone CI/CD 開源平台已經多年,很多人都會問我說,Drone 真的可以免費使用嗎?用在開源上面,或者是導入進公司內部團隊,這費用該怎麼計算呢?好的,本篇就帶大家了解 Drone 用在開源上或是公司內部團隊上需要注意的地方,官方其實有寫了一整頁 FAQ 非常詳細,底下是我整理幾點給大家知道。
影片介紹
影片視頻會同步放到底下課程內
常見問題
底下整理幾點大家可能會比較想知道即該注意的地方,詳細的細節可以直接在官方 FAQ 查看
Drone 共分幾種版本?
Drone 是一套完全開源的程式碼,詳細代碼可以在 GitHub 上面找到,而在這開源專案上面,總共可以區分為兩個版本,一個是 Open Source Edition 也就是俗稱開源專案,此專案的 License 為 Apache License,而另一個版本則是 Enterprise Edition 俗稱企業版本,但是這個企業版本也是[完全開源]的,而企業版本的 Licnese 為 Polyform Small Business License,所以各位在選用版本之前,請先看完 License 資訊,這兩個版本的代碼基本上就在同一個 repository 內。
如何選擇開源或企業版本?
這邊其實很簡單可以區分,只要公司或組織的營業額小於 $1 million US dollars (台幣算 3000 萬),都可以免費使用,裝企業或是開源版本都是可以的,所以不管你的身份是如何,只要營業額超過這數字,你就要開始付費的意思。那該如何試用企業版本呢?很簡單只需要按照官方教學即可,不過這邊有個限制,免費使用只能有 5000 builds,這個限制一到,整個系統就不給試用了。
免費使用開源或企業版本
上一點有提到官方安裝步驟預設是安裝試用企業版本的,所以都有 5000 builds 次數限制,要預設免除這個限制有兩種做法,第一種就是請使用 Gitea 或 Gogs 這兩套其中一套來當作 Git 服務,就不會有這限制,算是 Drone 給開源的福利,也算是幫忙推廣同樣是用 Go 語言開發的開源專案。第二種就是透過 Go 語言 go build 方式,而開源跟企業版本請用底下方式來 build 出新的 binary (底下是解除開源版本限制)
|
|
要解除商業版本限制:
|
|
這邊要注意,在解除限制前,先找公司法務商量,公司營業額已經大於 100 萬美金的話,請不要用上述方式繞過限制,乖乖付錢比較實在。很多人問到為什麼 Gitea 或 Gogs 為什麼沒這限制,請參考底下代碼,程式碼會說話:
|
|
開源 vs 企業版本差異
底下是官方列出來的企業版本功能
- Supports distributed runners
- Supports kubernetes runners
- Supports organization secrets, vault secrets, etc
- Supports cron scheduling
- Supports scalable storage (postgres, mysql, s3)
- Supports autoscaling
- Supports extensions
對比開源版本,多了底下限制
- Limited to a single machine
- Limited to an embedded sqlite database
不支援 Postgres 或 MySQL 資料庫,只能架設在單台機器上面。其他重要功能全都一樣,如果不是很介意這兩點,其實開源版本已經很夠用了。