返回介绍

部署 Drone

发布于 2019-11-10 06:06:43 字数 4969 浏览 1197 评论 0 收藏 0

要求

  • 拥有公网 IP、域名 (如果你不满足要求,可以尝试在本地使用 Gogs + Drone)

  • 域名 SSL 证书 (目前国内有很多云服务商提供免费证书)

  • 熟悉 Docker 以及 Docker Compose

  • 熟悉 Git 基本命令

  • CI/CD 有一定了解

新建 GitHub 应用

登录 GitHub,在 https://github.com/settings/applications/new 新建一个应用。

接下来查看这个应用的详情,记录 Client IDClient Secret,之后配置 Drone 会用到。

配置 Drone

我们通过使用 Docker Compose 来启动 Drone,编写 docker-compose.yml 文件。

version: '3'services:  drone-server:    image: drone/drone:1    ports:      - 443:443      - 80:80    volumes:      - drone-data:/data:rw      - ./ssl:/etc/certs    restart: always    environment:      - DRONE_AGENTS_ENABLED=true      - DRONE_SERVER_HOST=${DRONE_SERVER_HOST:-https://drone.yeasy.com}      - DRONE_SERVER_PROTO=${DRONE_SERVER_PROTO:-https}      - DRONE_RPC_SECRET=${DRONE_RPC_SECRET:-secret}      - DRONE_GITHUB_SERVER=https://github.com      - DRONE_GITHUB_CLIENT_ID=${DRONE_GITHUB_CLIENT_ID}      - DRONE_GITHUB_CLIENT_SECRET=${DRONE_GITHUB_CLIENT_SECRET}  drone-agent:    image: drone/agent:1    restart: always    depends_on:      - drone-server    volumes:      - /var/run/docker.sock:/var/run/docker.sock:rw    environment:      - DRONE_RPC_PROTO=http      - DRONE_RPC_HOST=drone-server      - DRONE_RPC_SECRET=${DRONE_RPC_SECRET:-secret}      - DRONE_RUNNER_NAME=${HOSTNAME:-demo}      - DRONE_RUNNER_CAPACITY=2    dns: 114.114.114.114volumes:  drone-data:

新建 .env 文件,输入变量及其值

# 必填 服务器地址,例如 drone.domain.comDRONE_SERVER_HOST=DRONE_SERVER_PROTO=httpsDRONE_RPC_SECRET=secretHOSTNAME=demo# 必填 在 GitHub 应用页面查看DRONE_GITHUB_CLIENT_ID=# 必填 在 GitHub 应用页面查看DRONE_GITHUB_CLIENT_SECRET=

启动 Drone

$ docker-compose up -d

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文