2016 - 2024

感恩一路有你

docker执行shell脚本 公司技术同事在讨论搭建一个Docker镜像自动构建系统,该怎么做?

浏览量:2066 时间:2021-03-11 17:07:36 作者:admin

公司技术同事在讨论搭建一个Docker镜像自动构建系统,该怎么做?

一个非常好的问题。我是一个web应用程序架构师,多年来一直致力于回答这个问题。欢迎跟我来了解更多。

Docker是一个开源应用程序容器引擎,它将应用程序和依赖项打包到一个可移植映像中,部署到服务器并在容器实例中运行。

在构建docker映像时,实际使用中存在一些错误:

1。docker映像由工程师在本地构建,然后推送到docker hub或其他映像仓库。

2. 这个程序是由Jenkins自动编译和打包的。获取运行包后,将其上载到代码库,并手动或自动构建docker映像。

3,…

,您不应手动上载或下载运行包,也不应使用预编译的运行包。

阿里云容器镜像服务提供docker镜像仓库托管,配置项目代码git仓库和构建规则,轻松实现自动化。结合dockerfile强大的功能,实现云编译和云打包。

操作演示:https://www.ixigua.com/i680218124291461639/

详细配置步骤:https://www.toutiao.com/i6802179342320271879/

微服务在Docker k8s下如何部署?

最近,这些技术已在项目中使用。让我介绍一些有价值的想法。

首先,结论如下:

1。K8s是一款非常好的技术,非常稳定。如果发现正在运行的pod数量不等于用户设置的期望值,k8s将自动创建或删除pod,直到它们相等为止。这不仅确保了服务的不间断运行,而且还动态地扩展了服务规范。用户只需要调整pod的复制次数,剩下的留给k8s,这很容易让人担心。

2. 使用Jenkins集成命令行操作,虽然我个人比较喜欢使用命令行,但我不得不承认,使用Jenkins集成命令行操作将大大提高工作效率。

实现步骤如下:(本文以Azure平台为例)

1。写dockerfile

2。在Jenkins中创建任务并执行包含以下命令的脚本

2.1 git将源代码拉到本地

2.2 docker build命令生成映像文件

2.3 docker定义映像文件版本号并上载到Azure平台

2.4 kubectl命令创建k8s部署和服务。

每个版本2.5update,可以调用update image来编译新的镜像版本并提供给k8s

注意,在创建k8s的部署和服务时,需要用yaml格式编写配置文件。部署配置包括名称、映像文件地址、最大和最小CPU分配值、最大和最小内存分配值等。服务配置文件包括名称、引用的部署名称以及是否使用负载平衡器。

有关更多详细信息,请参阅我的wikihttps://github.com/FamingHou/MyWiki

你为什么不喜欢PHP?

仍然沉浸在PHP中的人可能感觉不到,但是那些跳出PHP的人在接触到C#这样漂亮的语言之后,就再也回不去了。会叹息的日子是浪费生命啊!

docker执行shell脚本 docker 自动多行脚本 dockerfile文件详解

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。