docker高级应用之镜像打包与节点推送

简介:

目前我这里使用docker做caas平台,主要是解决:

1、运维沙箱环境测试;

2、研发半自动化代码部署与回滚;

3、集群化应用与auto scale。

目前这3点都实现,但在第2点与第3点联系的时候有个问题。在第2里,研发测试成功的代码会被打包为一个images,放入私有库,然后第3部集群更新的时候,会选择这个成功版本的镜像,但在更新中,由于每个节点都需要从私有库里获取镜像,这样节点越多更新越慢,所以为了解决这个问题,我这里在第二步研发打包image之后,会进行一下所有节点推送,这样在进行集群更新的时候,会很快了。

下面是我进行代码自动打包为镜像与镜像全节点推送的操作过程。

1、代码自动打包为镜像

主要是在容器所在宿主机里运行下面命令

1
docker commit --pause= false   container_name image_name:image_tag &>> /dev/null  && docker push image_repo /image_name :image_tag &>> /dev/null  &&  echo  0 ||  echo  1

上面只是操作的命令,实现操作我已经在程序里封装好了。

下面是web平台里的操作情况

wKioL1XtAofBndrVAAGjgOPROq4159.jpg

我想对容器test_update进行镜像打包,那么就点击Compress按钮输入具体描述就可以。

wKioL1XtA73zzq6SAACwAyg-YHA028.jpg

然后选择确定,等一会就会出现

wKioL1XtBBORtv1IAALscW8OnU8447.jpg可以看到右侧有个对话框,显示容器打包为镜像成功。

然后在去容器管理里查看具体信息

wKiom1XtAkCQicZrAAGnnHktexg252.jpg


可以看到镜像已经有了,在通过Info按钮查看具体信息

wKioL1XtBJHB9bv4AAGzC8DXpHk182.jpg

可以看到详情跟之前打包的一样。

2、进行镜像推送到所有节点

也是在镜像管理里,选择push按钮

wKiom1XtArWB9NxBAAGKDNzC6Fk018.jpg

选择推送就会在所有节点里同步镜像信息,其实也就是在所有节点运行docker pull命令

wKiom1XtAxyAdGLzAAOAFJNlrrc459.jpg可以通过左下角的firebug看到通过18.18秒就在所有节点里给361m的镜像同步完成。

之后这个进行就可以被集群环境或者其他环境给使用。













 本文转自 reinxu 51CTO博客,原文链接:http://blog.51cto.com/dl528888/1692224,如需转载请自行联系原作者

相关文章
|
2月前
|
JavaScript Docker 容器
使用Docker多阶段构建优化镜像大小
使用Docker多阶段构建优化镜像大小
311 100
|
2月前
|
缓存 安全 Linux
优化Docker镜像大小的多阶段构建实践
优化Docker镜像大小的多阶段构建实践
256 99
|
2月前
|
缓存 Docker 容器
优化Docker镜像大小的五个实用技巧
优化Docker镜像大小的五个实用技巧
249 98
|
1月前
|
监控 Kubernetes 安全
还没搞懂Docker? Docker容器技术实战指南 ! 从入门到企业级应用 !
蒋星熠Jaxonic,技术探索者,以代码为笔,在二进制星河中书写极客诗篇。专注Docker与容器化实践,分享从入门到企业级应用的深度经验,助力开发者乘风破浪,驶向云原生新世界。
还没搞懂Docker? Docker容器技术实战指南 ! 从入门到企业级应用 !
|
1月前
|
NoSQL 算法 Redis
【Docker】(3)学习Docker中 镜像与容器数据卷、映射关系!手把手带你安装 MySql主从同步 和 Redis三主三从集群!并且进行主从切换与扩容操作,还有分析 哈希分区 等知识点!
Union文件系统(UnionFS)是一种**分层、轻量级并且高性能的文件系统**,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem) Union 文件系统是 Docker 镜像的基础。 镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
270 5
|
2月前
|
前端开发 JavaScript 应用服务中间件
在Docker部署的前端应用中使用动态环境变量
以上步骤展示了如何在 Docker 配置过程中处理并注入环墨遁形成可执行操作流程,并确保最终用户能够无缝地与之交互而无须关心背后复杂性。
160 13
|
2月前
|
Java Docker 容器
使用Docker多阶段构建优化镜像大小
使用Docker多阶段构建优化镜像大小
152 8