#yyds干货盘点#关于 docker-compose stop 和 docker-compose start 的误解

Posted liuzhen007

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了#yyds干货盘点#关于 docker-compose stop 和 docker-compose start 的误解相关的知识,希望对你有一定的参考价值。


目录

​问题​

​解决​

​步骤一、确认新镜像中可执行程序是否正确​

​步骤二、 查看当前容器依赖的镜像版本是否正确​

​步骤三、验证更新命令是否正确​

​步骤四、使用正确的更新命令​

​参考链接​


问题

自己在原有镜像1.0的基础上,修改了一个问题,重新编译打包新镜像2.0,然后更新了 docker-compose.yml 中的版本号,停止并启动容器,发现原来的问题还没有解决。但是,自己明明已经改了。很奇怪!

解决

步骤一、确认新镜像中可执行程序是否正确

使用新镜像,启动一个容器服务,进入容器,发现可执行程序已经是最新了。

使用可执行程序特定的版本检查命令可以知道是新包,命令如下:


./bag -v


步骤二、 查看当前容器依赖的镜像版本是否正确

既然新镜像本身是正确的,那么就需要看看当前运行的容器依赖的是不是最新的镜像包即可,执行如下命令查看:


docker inspect bag


果然有问题,通过执行结果(下图)可以知道,当前运行的容器依赖的还是之前的镜像版本。

#yyds干货盘点#关于

那就奇怪了,明明 docker-compose.yml 文件中已经修改了版本号。 

步骤三、验证更新命令是否正确

对别的容器使用相同的命令,验证是否可以正确更新镜像版本,验证命令如下:


docker-compose stop test

docker-compose start test


结果很打脸,确实也没有更新。但是,自己明明记得之前这样操作是有效的。于是,自己查看官方的介绍文档,其中也明确说明:docker-compose stop 只会停止当前容器,不会删除容器。因此,再执行 docker-compose start 命令之后,只会把原来的容器重新启动。所以,我们看到的现象就是镜像没有更新。尴尬

以上是关于#yyds干货盘点#关于 docker-compose stop 和 docker-compose start 的误解的主要内容,如果未能解决你的问题,请参考以下文章

#yyds干货盘点#关于 Java 的可变参数你真的了解吗?

#yyds干货盘点# Java | 关于synchronized相关理解

#yyds干货盘点# 关于Activity,一个初级开发应该知道的一切

#yyds干货盘点#关于动静态缓存的一些Tips

#yyds干货盘点#关于 arm 和 x86 架构的思考

关于dart中的late关键字,你了解多少?#yyds干货盘点#