環境
註冊應用程式
首先到 GitHub 的 Developer settings 頁面建立一個 OAuth 應用程式,輸入以下設定:
儲存後,獲得一組 Client ID 和 Client Secret。
部署應用程式
打開終端機,建立一個 Drone 的 server 和 agent 共享的 secret。
在伺服器上建立一個 Drone 的工作目錄。
建立 docker-compose.yml
檔:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
| version: "3.5"
services: drone-server: image: drone/drone:1 ports: - 8000:80 volumes: - ./data:/data restart: always environment: - DRONE_SERVER_HOST=${DRONE_SERVER_HOST} - DRONE_SERVER_PROTO=${DRONE_SERVER_PROTO} - DRONE_GITHUB_CLIENT_ID=${DRONE_GITHUB_CLIENT_ID} - DRONE_GITHUB_CLIENT_SECRET=${DRONE_GITHUB_CLIENT_SECRET} - DRONE_RPC_SECRET=${DRONE_RPC_SECRET} - DRONE_LOGS_COLOR=true - DRONE_LOGS_PRETTY=true
drone-agent: image: drone/drone-runner-docker:1 volumes: - /var/run/docker.sock:/var/run/docker.sock restart: always depends_on: - drone-server environment: - DRONE_RPC_HOST=${DRONE_RPC_HOST} - DRONE_RPC_PROTO=${DRONE_RPC_PROTO} - DRONE_RPC_SECRET=${DRONE_RPC_SECRET}
|
建立 .env
檔:
1 2 3 4 5 6 7
| DRONE_SERVER_HOST=drone.domain.com DRONE_SERVER_PROTO=https DRONE_GITHUB_CLIENT_ID=xxxxx DRONE_GITHUB_CLIENT_SECRET=xxxxx DRONE_RPC_HOST=drone-server DRONE_RPC_PROTO=http DRONE_RPC_SECRET=xxxxx
|
建立 .gitignore
檔:
啟動 Drone 服務:
前往 https://drone.domain.com 瀏覽。
環境變數
程式碼
參考資料