资讯专栏INFORMATION COLUMN

docker-compose的一些理解

李涛 / 2403人阅读

摘要:也就是说,对每个镜像维护的容器,永远只有一个。除非用删除这些容器,否则对容器所做的修改都会被保留。而命令不一样,每次对镜像运行这条命令的时候,实际上都重新生成了一个容器,即新生成了一个镜像的实例,它们对应的也是不一样的。

开始不是很理解

docker-compose up

这个命令在干嘛,以为每次运行这条命令的额时候,都会生成新的container,如果启动多次,岂不是有很多镜像的全新实例跑在宿主机中?
其实不是这样的
docker-compose官方文档中有这么一段话

Preserve volume data when containers are created

Compose preserves all volumes used by your services. When
docker-compose up runs, if it finds any containers from previous runs,
it copies the volumes from the old container to the new container.
This process ensures that any data you’ve created in volumes isn’t lost

这段文字的大概意思是,compose会保留所有服务的volume data,这个volume data,我理解的是对容器做的所有修改。当再次运行docker-compose run这条命令的时候,compose会找到之前运行过的所有容器,然后把它们的volumes,也就是修改后的容器状态,从老的容器中,拷贝到新的容器中,在这个过程中新老容器的CONTAINER ID不会变化。

也就是说,compose对每个镜像维护的容器,永远只有一个
除非用docker rm删除这些容器,否则对容器所做的修改都会被保留。
其实,当用

docker-compose stop

暂停服务的时候,可以用

docker ps -a

查看所有容器的CONTAINER ID, -a 就是 --all
然后,用

docker-compose run

重新启动服务,用

docker ps

查看运行的容器的CONTAINER ID,(docker ps默认列出运行的容器),你会发现它们的id并没有发生改变。

docker run [image name]

命令不一样,每次对镜像运行这条命令的时候,实际上都重新生成了一个容器,即新生成了一个镜像的实例,它们对应的CONTAINER ID也是不一样的。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/26832.html

相关文章

  • 关于docker-compose一些理解

    摘要:最初对这个命令很疑惑,以为每次运行它都会生成新的容器实例。除非手动用命令删除容器,否则不会发生改变。提交重复了。。。。的网站每次提交都显示系统维护中,什么鬼。。。。 最初对docker-compose up这个命令很疑惑,以为每次运行它都会生成新的容器实例。其实不是这样的docker-compose的官网有这样一段话 Preserve volume data when contain...

    cyrils 评论0 收藏0
  • Swoft 新手向教程 - 通过 Docker 搭建一个开发环境

    摘要:前言是一个在之上构建的一个高性能协程全栈框架,而在里面是一个高级技能,所以在相关的环境安装上也给许多人造成了很大的困扰,更是如此,本文将通过以一种极其简单的方式解决运行环境和开发环境的部署。 showImg(https://segmentfault.com/img/bVbeknK?w=512&h=197); 本系列文章将从使用层面介绍 Swoft 框架的使用及业务开发,面向初中级的 P...

    tinysun1234 评论0 收藏0
  • Docker Compose 整合发布应用相关服务

    摘要:于是,程序不再是原先单一的服务,而是,变成了一系列密切相关的服务。需要注意的是,在模式下申请证书,需要向证明服务器能被访问。 首先,祝各位新年快乐,万事如意,鸡年大吉。 这次要来说说一个和前端并不太相关的东西——docker compose,一个整合发布应用的利器。 如果,你对 docker 有一些耳闻,那么,你可能知道它是什么。 不过,你不了解也没有关系,在作者眼中,docker 就...

    microcosm1994 评论0 收藏0
  • Docker Compose 整合发布应用相关服务

    摘要:于是,程序不再是原先单一的服务,而是,变成了一系列密切相关的服务。需要注意的是,在模式下申请证书,需要向证明服务器能被访问。 首先,祝各位新年快乐,万事如意,鸡年大吉。 这次要来说说一个和前端并不太相关的东西——docker compose,一个整合发布应用的利器。 如果,你对 docker 有一些耳闻,那么,你可能知道它是什么。 不过,你不了解也没有关系,在作者眼中,docker 就...

    newtrek 评论0 收藏0

发表评论

0条评论

李涛

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<