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

浙公网安备 33010602011771号