drone和gogs安装方法
  XJjnJFN1x2Qb 2023年11月02日 43 0

背景介绍

什么是 Drone?
Drone 是一个面向忙碌的开发团队的自助持续集成和持续交付平台。

官网地址:
https://www.drone.io/

同时,Drone 是使用 Golang 语言进行编写。所有的编译、测试的流程都在 Docker 容器中执行。Drone 通过使用简单的 YAML 配置文件,就可以轻松的定义出一条流水线,并且每一个构建操作都是在一个临时的 Docker 容器中执行,能够完全控制其构建环境并保证隔离。最后,开发人员只需要在项目中引入 .drone.yml 文件,将代码推送到 Git 仓库中,即可自动化的完成编译、测试 和 发布。

简单来说,Drone 其实就是一款轻量级的 Jenkins ,可以占用更少的资源,实现软件的流水线操作,并且可以轻松的和 Gitlab、Gitee、Github 相结合。

之前一直使用的是jenkins,最近听同行说,drone更轻量,所以准备测试一下。

一 使用的系统环境和镜像版本

系统版本:AlmaLinux release 9.2
docker  版本:Docker version 24.0.2
drone/drone-runner-docker:1.4.0
drone/drone:latest #最好用最新版本 2.18.0
gogs/gogs:0.12.0
所有的镜像都部署到了192.168.2.45的机器上

二 安装部署方式

2.1 drone各组件介绍

Drone 应用由 Server(服务器) 和 Runner(执行器) 两种服务构成。
Server(服务器) 主要负责管理和展示, Runner(执行器) 主要负责执行操作。

Server
Server(服务器) 负责的工作主要有
连接集成代码仓库
提供 web 管理页面
管理 Runner

2.2 部署drone-server

docker run -itd \
--env=DRONE_AGENTS_ENABLED=true \
--env=DRONE_GOGS_SERVER=http://192.168.2.45:13000 \
--env=DRONE_SERVER_PROTO=http \
--env=DRONE_SERVER_HOST=192.168.2.45:20080 \
--env=DRONE_USER_CREATE=username:administrator,admin:true \
--env=DRONE_RPC_SECRET=123456 \
--name=drone-server \
--restart=always \
-p 20080:80 \
-v /home/drone/server/data:/data \
drone/drone:2.18.0

2.2.1 drone-server登录界面:

登录 drone http://192.168.2.45:28080 登录drone会提示你使用gogs的用户名和密码登录。稍后会在部署gogs的时候介绍如何创建用户。 image.png

2.3 部署Runner

docker run -itd \
--env=DRONE_RPC_PROTO=http \
--env=DRONE_RPC_HOST=192.168.2.45:20080 \  #drone-server地址
--env=DRONE_RPC_SECRET=123456 \
--env=DRONE_RUNNER_CAPACITY=2 \
--env=DRONE_RUNNER_NAME=drone-runner-line \
--name=drone-runner \
--restart=always \
-p 23000:3000 \
-v /var/run/docker.sock:/var/run/docker.sock \
drone/drone-runner-docker:1.4.0

2.4 部署gogs(代码仓库)

docker run -itd --name=gogs --restart=always --privileged -p 12022:22 -p 13000:3000 -v /home/gogs/data:/data gogs/gogs:0.12.0

#登录gogs
# 在浏览器中输入以下IP地址,进入配置页面
http://192.168.2.45:13000/

2.4.1 选择数据库

登录进去之后,会提示你选择指定的数据库,我这里使用sqlite image.png

2.4.2 设置域名和url:

image.png

2.4.3 创建登录用户

image.png

2.4.4 gogs登录界面

image.png

至此,drone和gogs都已经完全部署完了,接下来会介绍drone如何进行使用。

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
  wwLZeziuqjLR   2023年12月11日   30   0   0 Dockercentos
  MCWYWqSAMsot   2023年12月11日   31   0   0 Docker
  DnoStTHsc0vp   2023年12月11日   24   0   0 Docker
  wwLZeziuqjLR   2023年12月08日   97   0   0 Dockercentosbash
  wwLZeziuqjLR   2023年12月07日   33   0   0 Dockercentos