news 2026/4/18 8:03:07

drone发版工具

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
drone发版工具

Drone 本身并不是“一键发版”的独立工具,而是一套轻量级、基于 Docker 的 CI/CD 引擎。

把“发版”这件事交给 Drone 的做法,就是在仓库根目录放一个 `.drone.yml`,把“编译-打包-推送-部署”全部写成 Pipeline;以后只要 `git push` 或打 Tag,Drone 会自动跑完整个流程,相当于“发版工具”。

下面给出一个最小可运行的 Go 项目发版模板,以及常见发版策略,你直接抄过去改镜像名、主机地址即可上线。

---

1. 安装(一次性)

```bash
# 服务器任意目录
git clone https://gitee.com/drone/drone-compose.git # 示例仓库
cd drone-compose
docker-compose up -d # 默认给你拉起 drone-server + drone-runner
```

内存占用 300-600 MB,4C4G 云主机足够 。

---

2. 在项目里放 `.drone.yml`(Go 二进制发版示例)

```yaml
kind: pipeline
type: docker
name: release

# 只在打 Tag 时触发(v1.2.3 这种)
trigger:
event:
- tag

steps:
- name: build
image: golang:1.22-alpine
commands:
- go mod tidy
- CGO_ENABLED=0 go build -ldflags "-s -w" -o app .

- name: tarball
image: alpine
commands:
- tar czf app-${DRONE_TAG}.tar.gz app

- name: publish-binary
image: plugins/github-release # 官方插件,自动把 tarball 上传到 GitHub Release
settings:
files: app-*.tar.gz
api_key:
from_secret: gh_token # 在 Drone UI 里提前填好

- name: docker-build
image: plugins/docker
settings:
repo: your-harbor.com/library/app
tags: ${DRONE_TAG},latest
registry: your-harbor.com
username:
from_secret: harbor_user
password:
from_secret: harbor_pwd

- name: deploy-prod
image: appleboy/drone-ssh # 远程 SSH 插件
settings:
host: 10.0.0.21
user: deploy
key:
from_secret: ssh_key
script:
- docker pull your-harbor.com/library/app:${DRONE_TAG}
- docker stop app || true
- docker rm app || true
- docker run -d --name app -p 8080:8080 your-harbor.com/library/app:${DRONE_TAG}
```

说明
- 第 1-2 步:编译 & 打压缩包
- 第 3 步:自动在 GitHub/Gitee 生成 Release 并上传二进制
- 第 4 步:把镜像推到私有 Harbor
- 第 5 步:SSH 到生产机拉镜像、停旧容器、起新容器——完成“发版”

---

3. 多环境进阶:Promote 手动提升

Drone 还支持“先构建→后人工提升”模式,避免 Tag 一推就直接上生产。

```bash
# 把第 42 号构建提升到 staging
drone build promote your/app 42 staging

# 验证无误后再升到 production
drone build promote your/app 42 production
```

在 `.drone.yml` 里用 `when:` 区分环境即可 。

---

4. 小团队落地经验(引用社区实践)

- 4C4G 云主机就能跑 Drone + Harbor,比 Jenkins 省 70 % 资源
- 配置全部写在 `.drone.yml`,仓库即文档,成员换项目 5 分钟就能看懂
- 镜像 tag 统一用 `${DRONE_TAG}` 或 `${DRONE_COMMIT:0:7}`,方便回滚
- 把 `secrets`(仓库令牌、SSH 私钥、镜像仓库密码)全部收进 Drone UI,不走明文

---

一句话总结

Drone 没有“发版”按钮,但只要写好 `.drone.yml`,打 Tag = 发版,后面编译、打包、推镜像、部署、通知全自动完成;再配合 `drone build promote` 还能实现“灰度→生产”两级发布,整条链路就是一套极简而完整的“Drone 发版工具”。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/18 3:48:23

Sonic数字人CI/CD流水线搭建:GitLab Runner集成示例

Sonic数字人CI/CD流水线搭建:GitLab Runner集成实践 在内容创作节奏日益加快的今天,如何快速生成高质量的数字人视频,已经成为虚拟主播、电商带货、在线教育等领域的核心竞争力之一。传统的3D建模动作捕捉方案不仅成本高昂、周期漫长&#x…

作者头像 李华
网站建设 2026/4/18 3:49:56

滑铁卢大学颠覆性发现:AI学习错误答案竟比学对答案更聪明!

这项由滑铁卢大学的Abhranil Chandra和Ayush Agrawal领导的研究团队发表于2024年12月的预印本论文中,有兴趣深入了解的读者可以通过arXiv:2512.22255查询完整论文。研究团队成员还包括来自谷歌DeepMind、微软印度研究院、蒙特利尔大学MILA人工智能研究所等多个顶尖机…

作者头像 李华
网站建设 2026/4/17 20:55:19

AI健康智慧体检管理系统:用技术把体检变成“私人健康指挥中心”

很多人每年都体检,但报告一拿就束之高阁,异常指标看不懂、风险不知道、后续该怎么做更是一头雾水。AI健康智慧体检管理系统,正是用一系列前沿技术,把传统体检从“一次性检查”升级为“持续、精准、可执行”的健康管理中枢。它不靠…

作者头像 李华
网站建设 2026/4/18 3:53:04

Springboot基于Web的绿色环保网站0z5t9(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。

系统程序文件列表项目功能:用户,产品类别,绿色产品,品牌企业,走进环保,法律法规开题报告内容SpringBoot基于Web的绿色环保网站开题报告一、研究背景与意义1.1 研究背景随着全球环境问题的日益严峻,绿色环保已成为社会发展的核心议题。各国政府、企业及公…

作者头像 李华
网站建设 2026/4/17 23:12:47

AI应用架构师必看:10个AI驱动虚拟艺术的核心架构设计技巧

AI应用架构师必看:10个AI驱动虚拟艺术的核心架构设计技巧 副标题:从模型选型到部署优化,构建高性能虚拟艺术生成系统的实战指南 摘要/引言 随着生成式AI技术的爆发(如Stable Diffusion、DALL-E 3、Midjourney)&…

作者头像 李华
网站建设 2026/4/18 3:52:33

Cosmos IBC跨链传递Sonic数字人身份数据

Cosmos IBC跨链传递Sonic数字人身份数据 在虚拟偶像直播带货、AI教师授课、数字客服交互日益普及的今天,一个核心问题逐渐浮现:这些由人工智能生成的“数字人”,其身份资产往往被锁死在单一平台中。你在A平台训练好的形象,无法直接…

作者头像 李华