[分享] Go 語言開源專案 Drone 搭配 GitLab 安裝
如果你沒在使用 GitLab CI,那可以來嘗試看看 Drone CI/CD,用不到 10 分鐘就可以快速架設好 Drone,並且上傳一個 .drone.yml 並且開啟第一個部署或測試流程,安裝步驟非常簡單,只需要對 Docker 有基本上的瞭解,通常都可以在短時間完成 Drone CI/CD 架設。
- 部落格: https://blog.wu-boy.com/2019/08/install-drone-with-gitlab-in-10-minutes/
- 教學影片: https://www.youtube.com/watch?v=FweOIzsa_Yw (喜歡訂閱+分享)
更多實戰影片可以參考我的 Udemy 教學系列
- Go 語言實戰課程: http://bit.ly/golang-2019
- Drone CI/CD 自動化課程: http://bit.ly/drone-2019
安裝 Drone Server
用 docker-compose 可以快速設定 Drone Server
services:
drone-server:
image: drone/drone:1
ports:
- 8081:80
volumes:
- ./:/data
restart: always
environment:
- DRONE_SERVER_HOST=${DRONE_SERVER_HOST}
- DRONE_SERVER_PROTO=${DRONE_SERVER_PROTO}
- DRONE_RPC_SECRET=${DRONE_RPC_SECRET}
- DRONE_AGENTS_ENABLED=true
# Gitlab Config
- DRONE_GITLAB_SERVER=https://gitlab.com
- DRONE_GITLAB_CLIENT_ID=${DRONE_GITLAB_CLIENT_ID}
- DRONE_GITLAB_CLIENT_SECRET=${DRONE_GITLAB_CLIENT_SECRET}
- DRONE_LOGS_PRETTY=true
- DRONE_LOGS_COLOR=true
只要在 docker-compose.yml
底下新增 .env
檔案,將上面的變數值填寫進去即可
安裝 Drone Agent
雖然 drone 在 1.0 提供單機版,也就是 server 跟 agent 可以裝在同一臺,但是本篇教學還是以分開安裝為主,對未來擴充性會更好。
drone-agent:
image: drone/agent:1
restart: always
depends_on:
- drone-server
volumes:
- /var/run/docker.sock:/var/run/docker.sock
environment:
- DRONE_RPC_SERVER=http://drone-server
- DRONE_RPC_SECRET=${DRONE_RPC_SECRET}
- DRONE_RUNNER_CAPACITY=3
完整的設定檔可以參考這邊。
相關文章
- Drone 搭配 Kubernetes 部署 Go 語言專案Go
- Go 語言開源 CI/CD 容器 Drone 介紹Go
- Go Module 匯入到專案內且搭配 Travis CI 或 Drone 工具Go
- go語言安裝Go
- 有哪些值得學習的 Go 語言開源專案?Go
- GO語言————2、GO語言環境安裝Go
- go語言教程哪裡有?go 語言優秀開源專案彙總Go
- windows下安裝go語言WindowsGo
- Go語言專案實戰:基於開源資料的成語查詢Go
- 開心檔之Go 語言環境安裝Go
- Go語言快速安裝手冊Go
- go語言安卓開發Go安卓
- 優秀的 Spring Boot 語言開源專案Spring Boot
- go語言學習-安裝和配置Go
- go get 安裝gitlab私有包GoGitlab
- go語言實戰教程:實戰專案資源匯入和專案框架搭建Go框架
- [Go語言整合開發環境之GoLand安裝使用]開發環境GoLand
- Go 語言專案程式碼品質Go
- VSCODE安裝GO語言並配置go module啟動VSCodeGo
- go語言書籍分享Go
- Go語言面試題分享:選擇題11道(2)go語言開發Go面試題
- Go語言開發的微服務框架有什麼專案?go學習Go微服務框架
- GO語言安裝air框架時遇到go: inconsistent vendoring問題GoAI框架
- Go語言專案實戰:多人聊天室Go
- Go語言專案實戰:併發爬蟲Go爬蟲
- Go 語言入門練手專案推薦Go
- 開源 PHP 商城專案 CRMEB 安裝和使用教程PHP
- 分享個 golang 開源小專案Golang
- Go 語言開源 Excelize 基礎庫影片教程GoExcelize
- 最新Android開源庫、工具、開源專案整理分享Android
- Go優秀開源專案推薦Go
- 【Go 語言入門專欄】Go 語言的起源與發展Go
- 基於go語言gin框架的web專案骨架Go框架Web
- Go語言專案編譯之後找不到配置檔案Go編譯
- 非常棒的一門GO語言實戰課程《高併發&高效能 Go語言開發企業級抽獎專案》——推薦連結分享Go
- 安裝配置開源的laravel專案到本地環境Laravel
- GO語言必備的五大開源工具!Go開源工具
- IOS技術分享| anyLive 開源專案iOS