统信UOS怎么安装Drone CI_统信UOS Drone持续集成安装配置方法【进阶】

轻雪酱_7340

轻雪酱_7340

2026-04-08

665人浏览

原创

在统信UOS系统上构建Drone CI/CD流水线有四种方法:一、Docker Compose标准化部署;二、手动docker run启动Server与Agent;三、离线二进制部署Server(Runner仍需Docker);四、集成Git平台OAuth2认证,需同步时间、处理证书及配置回调URL。

统信uos怎么安装drone ci_统信uos drone持续集成安装配置方法【进阶】

如果您希望在统信UOS系统上构建轻量级CI/CD流水线,Drone作为基于容器的持续集成服务,需依赖Docker运行时环境并完成服务端与Agent组件协同部署。以下是多种可行的安装配置方法:

一、基于Docker Compose的标准化部署

该方式通过声明式编排文件统一管理Drone Server与Runner容器,适用于已稳定运行Docker且具备基础网络配置能力的UOS服务器环境,支持快速复现与版本控制。

1、确认Docker服务已启用并正常运行:sudo systemctl is-active docker

2、创建专用工作目录并进入:mkdir -p /opt/drone && cd /opt/drone

3、编写docker-compose.yml文件,内容包含server与agent两个服务定义,其中server需配置DRONE_SERVER_HOST、DRONE_RPC_SECRET等必要环境变量

4、执行部署命令:sudo docker-compose up -d

5、验证容器状态:sudo docker-compose ps,确认server与agent均显示Up状态

二、手动运行Drone Server与Agent容器

该方式绕过编排工具,直接使用docker run命令启动各组件,便于调试启动参数、隔离网络配置或适配UOS特有的cgroup v2限制场景。

1、拉取Drone官方镜像:sudo docker pull drone/drone:latest

2、运行Drone Server容器,挂载持久化数据卷并暴露80端口:sudo docker run -d --name=drone-server --restart=always -p 80:80 -v /var/lib/drone:/data -e DRONE_SERVER_HOST=your-domain-or-ip -e DRONE_RPC_SECRET=your-secret-key -e DRONE_SERVER_PROTO=http drone/drone:latest

3、拉取Drone Runner镜像:sudo docker pull drone/drone-runner-docker:latest

4、运行Drone Agent容器,连接至本地Server并启用Docker socket挂载:sudo docker run -d --name=drone-runner --restart=always --link drone-server -v /var/run/docker.sock:/var/run/docker.sock -e DRONE_RPC_PROTO=http -e DRONE_RPC_HOST=drone-server -e DRONE_RPC_SECRET=your-secret-key -e DRONE_RUNNER_CAPACITY=2 drone/drone-runner-docker:latest

三、离线环境下二进制方式部署Drone Server

该方式适用于无外网访问、禁止镜像拉取的高安全等级UOS生产环境,所有组件以静态可执行文件形式部署,不依赖Docker守护进程运行Server(仅Runner需Docker)。

1、在联网机器下载Drone Server二进制包(对应amd64或aarch64架构):wget https://github.com/drone/drone/releases/download/v2.25.0/drone-linux-amd64

2、赋予执行权限并重命名为drone:chmod +x drone-linux-amd64 && sudo mv drone-linux-amd64 /usr/local/bin/drone

3、创建systemd服务单元文件/etc/systemd/system/drone.service,指定WorkingDirectory、EnvironmentFile及ExecStart路径

4、创建环境变量文件/etc/default/drone,写入DRONE_DATABASE_DRIVER、DRONE_DATABASE_DATASOURCE、DRONE_SERVER_HOST、DRONE_RPC_SECRET等必需项

5、启用并启动服务:sudo systemctl daemon-reload && sudo systemctl enable drone && sudo systemctl start drone

四、集成Git平台认证的配置要点

Drone需与代码托管平台(如Gitea、Gogs或GitLab)建立OAuth2回调连接,UOS系统中需确保时间同步、HTTPS证书可信及反向代理配置兼容。

1、在UOS主机上安装并启用chrony服务:sudo apt install -y chrony && sudo systemctl enable chrony && sudo systemctl start chrony

2、若使用自签名证书,在Drone Server容器启动参数中添加--tls-disable或配置CA证书路径

3、在Git平台应用设置中注册OAuth2应用,获取Client ID与Client Secret

4、将Client ID与Client Secret填入Drone Server环境变量DRONE_GITEA_CLIENT_ID与DRONE_GITEA_CLIENT_SECRET

5、确保Drone_SERVER_HOST值与Git平台OAuth2回调URL中域名完全一致,大小写与协议必须严格匹配

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
default gateway怎么配置
default gateway怎么配置

配置default gateway的步骤:1、了解网络环境;2、获取路由器IP地址;3、登录路由器管理界面;4、找到并配置WAN口设置;5、配置默认网关;6、保存设置并退出;7、检查网络连接是否正常。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2023.12.07

357

5

github中文官网入口 github中文版官网网页进入
github中文官网入口 github中文版官网网页进入

github中文官网入口https://docs.github.com/zh/get-started,GitHub 是一种基于云的平台,可在其中存储、共享并与他人一起编写代码。 通过将代码存储在GitHub 上的“存储库”中,你可以: “展示或共享”你的工作。 持续“跟踪和管理”对代码的更改。

2026.01.21

8645

27

GitHub官网入口版本汇总
GitHub官网入口版本汇总

本专题整合了GitHub入口版本地址汇总,阅读专题下面的文章了解更多详细内容。

2026.04.02

918

19

自建git服务器
自建git服务器

git服务器是目前流行的分布式版本控制系统之一,可以让多人协同开发同一个项目。本专题为大家提供自建git服务器相关的各种文章、以及下载和课程。

2023.07.05

6859

9

git和svn的区别
git和svn的区别

git和svn的区别:1、定义不同;2、模型类型不同;3、存储单元不同;4、是否拥有全局版本号;5、内容完整性不同;6、版本库不同;7、克隆目录速度不同;8、分支不同。php中文网为大家带来了git和svn的相关知识、以及相关文章等内容。

2023.07.06

1940

6

git撤销提交的commit
git撤销提交的commit

Git是一个强大的版本控制系统,它提供了很多功能帮助开发人员有效地管理和控制代码的变更,本专题为大家提供git 撤销提交的commit相关的各种文章内容,供大家免费下载体验。

2023.07.24

1154

5

git提交错误怎么撤回
git提交错误怎么撤回

git提交错误撤回的方法:git reset head^:撤回最后一次提交,恢复到提交前状态。git revert head:创建新提交,内容与之前提交相反。git reset :使用提交的 sha-1 哈希撤回指定提交。交互式舞台区:标记要撤回的特定更改,然后提交,排除已撤回更改。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2024.04.09

4457

7

git怎么对比两个版本的文件内容
git怎么对比两个版本的文件内容

要对比两个版本的 git 文件,请使用 git diff 命令:git diff 比较工作树和暂存区之间的差异。git diff 比较两个提交或标签之间的差异。git diff 输出显示差异块,其中 + 表示添加的行,- 表示删除的行, 表示修改的行。可使用 gitkraken、meld、beyond compare 等可视化工具更直观地查看差异。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2024.04.09

4301

6

k8s和docker区别
k8s和docker区别

k8s和docker区别有抽象层次不同、管理范围不同、功能不同、应用程序生命周期管理不同、缩放能力不同、高可用性等等区别。本专题为大家提供k8s和docker区别相关的各种文章、以及下载和课程。

2023.07.24

765

4

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
热门推荐
/
最新课程
phpStudy极速入门视频教程
phpStudy极速入门视频教程

共6课时 | 54.7万人学习

独孤九贱(4)_PHP视频教程
独孤九贱(4)_PHP视频教程

共89课时 | 134.1万人学习