Docker安装drone

Drone介绍

Drone 相对于常见的 Jenkins,选中 Drone 的原因在于它非常简洁,不像 Jenkins 那样复杂,同时它拥有可以满足基本需求的能力,并且提供了许多实用的插件。
而且 Jenkins 包含了大量的图形化界面,虽然大而全,但是在有时候只想简单的做一个 CI 的容器时就显得有些笨重,本文简单的介绍使用 docker 搭建 drone 项目,并发布一个 SpringBoot 的 Java 项目。

使用 Docker 安装 Drone

首先下载 Drone 的 Server 和 Runner 的镜像

docker pull drone/drone:2
docker pull drone/drone-runner-docker:1

Server:为 Drone 的管理提供了 Web 页面,用于管理从 Git 上获取的仓库中的流水线任务

Runner:一个单独的守护进程,会轮询 Server,获取需要执行的流水线任务,之后执行

安装 drone-server

sudo docker run \
  --volume=/mydata/drone:/data \
  --env=DRONE_AGENTS_ENABLED=true \
  --env=DRONE_GOGS_SERVER=http://192.168.245.133:13000 \
  --env=DRONE_RPC_SECRET=rpc_secret \
  --env=DRONE_SERVER_HOST=192.168.245.133:3080 \
  --env=DRONE_SERVER_PROTO=http \
  --env=DRONE_USER_CREATE=username:liufei,admin:true \
  --publish=3080:80 \
  --publish=443:443 \
  --restart=always \
  --detach=true \
  --name=drone \
  drone/drone:2

DRONE_GOGS_SERVER:用于配置 Gogs 服务地址

DRONE_RPC_SECRET:Drone 的共享秘钥,用于验证连接到 server 的 rpc 连接,server 和 runner 需要提供同样的秘钥

DRONE_SERVER_HOST:用于配置 Drone server 外部可访问的地址

DRONE_SERVER_PROTO:用于配置 Drone server 外部可访问的协议,必须是 http 或 https

DRONE_USER_CREATE:创建一个管理员账号,该账号需要在 Gogs 中注册好,否则在后面无法将仓库设置为Trusted

posted @ 2022-09-27 23:00  刘翊扬  阅读(472)  评论(0)    收藏  举报