yz3q4jy399 发表于 2022-12-17 12:24:08

DevOps开发运维通过CI/CD使用Go语言部署应用程序

本文介绍并让您了解如何使用Buddy开发运维自动化构建和部署Golang应用程序
Buddy可让您创建交付流水线,只需一次推送到分支,即可构建、签署和部署您的Go应用程序。流水线包含您可以根据需要配置的操作。

https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/e12173fb8ec640f783e0909eb33af074~tplv-tt-large.image?x-expires=1986614531&x-signature=UipLtfd5U5TB04FqD3dxJIxHN3k%3D

配置非常简单,只需几分钟即可完成。
1. 选择您的Git存储仓

Buddy支持所有流行的Git托管服务提供商,包括GitHub、Bitbucket和GitLab。 您还可以使用自己的私有Git服务器或直接在 Buddy上托管代码。

https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/725d462d736e43e2a671e826d5f80cbc~tplv-tt-large.image?x-expires=1986614531&x-signature=myZ4ETr1DOz7%2Fyd32z52jrxIVzQ%3D

2. 新添交付流水线​

输入流水线的名称,选择触发模式,并定义Buddy从中提取代码的分支:

https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/6fb7c1378a5b4078a51c5234caacacce~tplv-tt-large.image?x-expires=1986614531&x-signature=QjBjcuEYZ93NPLQPStKNQ40Z4qM%3D

分支分配 — 此为Buddy将部署的分支。 如果将触发模式设置为“事件”,Buddy将在每次推送到该分支时执行流水线运行。
触发器模式

[*]事件(自动) — 开发环境时推荐使用
[*]手动(点击触发) — 产品环境时推荐使用
[*]定时(按时间间隔) — 暂存/测试的时候推荐使用
3. 添加操作​

Buddy可让您从数十种预定义的操作中进行选择。在此示例中,我们将添加4个操作来执行以下任务:

[*]构建并测试您的Go应用
[*]将代码与编译的资源一起上传到服务器(FTP、SFTP、Rsync等)
[*]重启服务器
[*]发送通知至Slack
3.1 构建并测试您的Go应用​

查找并点击Go操作进行配置。在此,您可以选择Hugo版本并确定要执行的命令。 默认命令是:
export GOPATH=/export GO15VENDOREXPERIMENT=1go testgo build
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/69aaa433a5d34662a3a7d6f6e38b3d99~tplv-tt-large.image?x-expires=1986614531&x-signature=acNlTH5AgVAeDXd1t0%2B%2B4Tu02Ds%3D

如果您的测试要求运行数据库,可在服务标签页中进行附加:

https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/a2abab13fd76448e9567d14a9765f188~tplv-tt-large.image?x-expires=1986614531&x-signature=O6U52WrrzfaJSNNeKPVMA6tlGcY%3D

3.2 部署应用至服务器​

网站已准备好上传,前往“远程”区域传输下拉菜单并选择您的上传操作(本文使用SFTP作为示例):

https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/fe6133bf5cec4826a60f2c8740251e2f~tplv-tt-large.image?x-expires=1986614531&x-signature=z4SpVlMJY8WYT4i7Wz0HCRWCIuA%3D

添加操作时,您可以选择应该上传的内容和位置:

https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/976134ec4402401c83d6176ccb2c0a1b~tplv-tt-large.image?x-expires=1986614531&x-signature=feSUwwhlfKZ8XSbKZGdksoDoV6U%3D

3.3 重启应用程序​

一旦部署应用程序后,您可以使用SSH操作在服务器上运行其他命令:

https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/4da9ab1e197248eba1778d01fb87d817~tplv-tt-large.image?x-expires=1986614531&x-signature=SQhsNxtYmguB9s8q%2BzQt4xS2myQ%3D

输入命令以执行和配置身份验证详细信息:

https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/0948772a9ad34a4d9e69571ad54d1dfa~tplv-tt-large.image?x-expires=1986614531&x-signature=fESJ0A2idB%2Bk%2Bgn4dvF0DVsPcdU%3D

3.4 发送通知至Slack​

您可以将Buddy配置为在部署后向您的团队发送消息。 本文我们使用Slack作为示例:

https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/b4930598be68491ea4d86f2fb1af001c~tplv-tt-large.image?x-expires=1986614531&x-signature=eOiPEsN%2FIepzeIz%2FIQ2uVy4HGPA%3D

如果您将此操作添加到操作失败时运行则Buddy只会在您的构建或部署出现问题时发送消息。
4. 总结​

恭喜!您刚刚自动化了整个部署过程。 推送到选定的分支并观察Buddy提取、构建和部署您的项目。 应用持续部署后,您现在可以专注于真正重要的事情:开发出色的应用程序!
注:本文只是Buddy功能特色其中的一个简短示例。您可以为暂存和生产环境创建额外的流水线, 与您最喜欢的服务(AWS、谷歌云、Azure)集成,, 触发测试于拉取请求、构建Docker镜像同时推送到注册中心(Registry)---功能设置无可限量。

xb6rqbbqrr 发表于 2022-12-17 12:24:39

能私有化部署么?

ugvi6vgvwg2vvg 发表于 2022-12-17 12:25:29

转发了

un82oa8oaot1ff 发表于 2022-12-17 12:26:02

转发了

吉祥AB 发表于 2022-12-17 12:26:28

转发了

uc83zfawzf2f8q 发表于 2022-12-17 12:27:28

转发了

ui55ass60ts96a 发表于 2022-12-17 12:27:56

转发了

赵菲 发表于 2022-12-17 12:28:46

转发了

uuvrkgmvvepngi 发表于 2022-12-17 12:28:58

转发了
页: [1]
查看完整版本: DevOps开发运维通过CI/CD使用Go语言部署应用程序