教你如何使用go docker将打包效率提高3倍。 Jenkins 管道打包不需要帮助。

最近研究了一下gin-vue-admin框架,其中官方自带docker镜像打包。我们在jenkins流水线将后端服务打包镜像上次到K8s 平台中,发现每次打包d

大家好,今天小编来为大家解答以下的问题,关于教你如何使用go docker将打包效率提高3倍。 Jenkins 管道打包不需要帮助。,这个很多人还不知道,现在让我们一起来看看吧!

从上图我们可以看出,**生成图像**是最耗时的。我们来分析一下这一步需要多少时间

镜像开始打包,然后有一个下载第三方依赖包的部分。

下载完成后发现耗时42.2秒。好人大概把一半以上的镜像构建时间都花在了下载第三方GO依赖包上。让我们检查一下它的dockerfile,看看里面做了什么。

来自golang:alpine 作为builderWORKDIR /go/src/ahzz/gin-vue-adminCOPY 。WORKDIR /go/src/ahzz/gin-vue-admin/serverRUN lsRUN pwdRUN go env -w GO111MODULE=on \ go env -w GOPROXY=https://goproxy .cn,direct \ go env -w CGO_ENABLED=0 \ go env \ go mod tidy \ go build -gcflags ‘all=-N -l’ -o server .FROM alpine:latestLABEL MAINTAINER=’wwwzhouhui’WORKDIR /go/src/ahzz /gin-vue-adminCOPY –from=0 /go/src/ahzz /gin-vue-admin/server ./COPY –from=0 /go/src/ahzz/gin-vue-admin/server/resource 。 /resource/COPY –from=0 /go/src/ahzz/gin-vue-admin/server/config.yaml ./COPY –from=0 /go/src/ahzz/gin-vue-admin/server/dongtai-go-agent-config.yaml ./EXPOSE 8080ENTRYPOINT ./server 从上面的dockerfile 可以看出,该镜像采用了分层打包的模式。第一步是使用go mod tidy image 在镜像中构建。第二步是

思考公司目前的环境:

教你如何使用go docker将打包效率提高3倍。 Jenkins 管道打包不需要帮助。

3个jenkins集群环境

13 rancher集群环境(开发环境)

第一步,在三台jenkins服务器上安装go运行环境(这个比较简单,这里不再介绍)

我们运行go env

以上保证了go环境是OK的。

教你如何使用go docker将打包效率提高3倍。 Jenkins 管道打包不需要帮助。

以上步骤完成了pipeline代码+dockerfile文件的修改。

我们来比较一下两者的构建时间消耗

旧模式

新型号

用户评论

教你如何使用go docker将打包效率提高3倍。 Jenkins 管道打包不需要帮助。
非想

我去!我一直想学习Go和Docker,这篇文章简直太赞了!3倍效率提升?我必须尝试一下! 终于不用手动打包烦死了。

    有17位网友表示赞同!

教你如何使用go docker将打包效率提高3倍。 Jenkins 管道打包不需要帮助。
我的黑色迷你裙

说得太具体了!看了这个 tutorial 我就能马上行动started, 尤其是 Jenkins 流水线打包这部分实用到爆。我现在已经用起来啦,感觉真的高效很多,推荐给所有 Go 开发者!

    有11位网友表示赞同!

教你如何使用go docker将打包效率提高3倍。 Jenkins 管道打包不需要帮助。
孤者何惧

我也想过学习Jenkins流水线,但是总觉得复杂… 这篇文章讲得很好懂,有图有文,我终于没那么畏惧了

    有14位网友表示赞同!

教你如何使用go docker将打包效率提高3倍。 Jenkins 管道打包不需要帮助。
巴黎盛开的樱花

提升3倍效率?听起来有点夸张吧,希望这篇教程能提供更详细的数据支持! 不过我对Go和Docker还是很感兴趣的,等有机会再研究一下

    有16位网友表示赞同!

教你如何使用go docker将打包效率提高3倍。 Jenkins 管道打包不需要帮助。
优雅的叶子

作为一名前端开发者,平时也没啥机会接触docker, 这篇文章介绍的 docker 和 Jenkins 流水线的使用场景很明确,可以多看看。我需要学习一些go语言知识来配合使用

    有19位网友表示赞同!

教你如何使用go docker将打包效率提高3倍。 Jenkins 管道打包不需要帮助。
把孤独喂饱

这篇文章太棒了!以前打包都是手动一个个文件弄,效率真低。现在知道了Go和 Docker 的好处,感觉工作流程提升很多!

    有7位网友表示赞同!

教你如何使用go docker将打包效率提高3倍。 Jenkins 管道打包不需要帮助。
万象皆为过客

我觉得文章中提到的工具和方法都很实用,但是对于新手来说可能有点难度,建议增加一些更基础的讲解。

    有16位网友表示赞同!

教你如何使用go docker将打包效率提高3倍。 Jenkins 管道打包不需要帮助。
何年何念

我一直在用传统的打包方式,效率确实低。这篇关于Go Docker高效打包的文章介绍的内容很有帮助,准备动手尝试一下

    有5位网友表示赞同!

教你如何使用go docker将打包效率提高3倍。 Jenkins 管道打包不需要帮助。
念初

我一直觉得Jenkins流水线比较难学,这篇教程讲得非常详细,有图文并茂的讲解,让我一下子就理解了怎么使用! 这篇教程简直太棒了!

    有17位网友表示赞同!

教你如何使用go docker将打包效率提高3倍。 Jenkins 管道打包不需要帮助。
孤独症

感觉这篇文章说的都是一些入门级的知识,对比较资深的Go开发者来说可能没什么帮助。

    有14位网友表示赞同!

教你如何使用go docker将打包效率提高3倍。 Jenkins 管道打包不需要帮助。
话扎心

标题有点夸张,提高3倍效率听起来不太现实。希望能提供更具体的案例和数据支持,这样才能更有效地参考学习。

    有20位网友表示赞同!

教你如何使用go docker将打包效率提高3倍。 Jenkins 管道打包不需要帮助。
旧爱剩女

我试过这个方法,确实可以提升打包效率。不过还是需要根据具体情况灵活调整使用方式,不能完全照葫芦画瓢

    有19位网友表示赞同!

教你如何使用go docker将打包效率提高3倍。 Jenkins 管道打包不需要帮助。
玩味

Go语言本身的并发能力就比较强,再加上Docker容器技术的轻量化特性,这两种技术相结合效果一定很优越!

    有16位网友表示赞同!

教你如何使用go docker将打包效率提高3倍。 Jenkins 管道打包不需要帮助。
轨迹!

学习了这些知识以后,相信可以让我更有效率地完成开发工作,提高我的工作效率! 特别感谢作者分享这份宝贵信息!

    有7位网友表示赞同!

教你如何使用go docker将打包效率提高3倍。 Jenkins 管道打包不需要帮助。
南初

我觉得文章缺乏对Go语言基础知识的讲解,对于不熟悉Go语言的新手来说可能比较困难。

    有8位网友表示赞同!

教你如何使用go docker将打包效率提高3倍。 Jenkins 管道打包不需要帮助。
仰望幸福

这个教程非常实用!我终于摆脱了手动打包的麻烦,现在使用Go 和 Docker 开发效率明显提高! 真是太赞了!

    有6位网友表示赞同!

教你如何使用go docker将打包效率提高3倍。 Jenkins 管道打包不需要帮助。
服从

Jenkins流水线确实挺复杂的,不过看这篇教程感觉慢慢就能理解。 最好跟着教程一步一步实践操作!

    有14位网友表示赞同!

教你如何使用go docker将打包效率提高3倍。 Jenkins 管道打包不需要帮助。
青袂婉约

我觉得这篇文章更侧重于 Go 与 Docker 应用场景的介绍,对于深入理解这两个技术的原理可能还不够,还需要搭配其他学习资源进行钻研。

    有15位网友表示赞同!

教你如何使用go docker将打包效率提高3倍。 Jenkins 管道打包不需要帮助。
墨染年华

终于有可以快速打包Go程序的方法了!这篇文章真是太棒了!我决定马上开始实践使用!

    有7位网友表示赞同!

原创文章,作者:小su,如若转载,请注明出处:https://www.sudun.com/ask/111198.html

(0)
小su's avatar小su
上一篇 2024年8月30日 下午5:45
下一篇 2024年8月30日 下午5:49

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注