docker服务器与服务器之间的区别组成

我正在通过volumes_from撰写volumes_from选项。 显然,您可以从容器或服务中导入卷。 从docker撰写文件是:

volumes_from

装载来自其他服务或容器的所有卷,可选地指定只读访问(ro)或读写(rw)。

 volumes_from: - service_name - service_name:ro - container:container_name - container:container_name:rw 

注:容器:…格式仅在版本2文件格式中受支持。 在版本1中,您可以使用容器名称而不标记它们:

 - service_name - service_name:ro - container_name - container_name:rw 

我很困惑这里的容器和服务有什么区别?

服务和容器是相关的,但都是不同的东西。

服务可以由一个或多个容器运行。 docker可以处理集装箱, docker-compose可以处理服务。

例如:

假设我们有这个docker-compose.yml文件:

 web: image: example/my_web_app:latest expose: - 80 links: - db db: image: postgres:latest 

这个组合文件定义了两个服务, webdb

当你运行docker docker-compose up ,假设项目目录是test1那么compose将启动2个名为myapp_db_1myapp_web_1容器。

 $ docker ps -a CONTAINER ID IMAGE COMMAND ... NAMES 1c1683e871dc test1_web "nginx -g" ... test1_web_1 a41360558f96 test1_db "postgres -d" ... test1_db_1 

所以,在这一点上,你有两个服务和每个容器1个。

但是你可以扩展名为web的服务来使用5个容器。

 $ docker-compose scale web=5 Creating and starting 2 ... done Creating and starting 3 ... done Creating and starting 4 ... done Creating and starting 5 ... done 

在这一点上,你有2个服务和6个容器

 $ docker ps -a CONTAINER ID IMAGE COMMAND ... NAMES 1bf4c939263f test1_web "nginx -g" ... test1_web_3 d3033964a44b test1_web "nginx -g" ... test1_web_4 649bbda4d0b0 test1_web "nginx -g" ... test1_web_5 a265ea406727 test1_web "nginx -g" ... test1_web_2 1c1683e871dc test1_web "nginx -g" ... test1_web_1 a41360558f96 test1_db "postgres -d' ... test1_db_1 

此外,通过docker-compose,您可以针对一个或多个服务运行子命令。

 $docker-compose stop web 

我不能完全回答你的问题,因为我不了解自己的服务。 不过,我确实理解容器的容量,所以这个答案只能回答你的问题的一半:)部分答案比没有答案好?

集装箱A

 volumes: /my/shared/directory container_name:ca 

容器B

 volumes_from:ca 

现在,容器B将在容器A中挂载的/ my / shared /目录中有一个新的目录 – 容器B中的目录内容将与容器A中的目录内容完全相同

如果你发现服务PLZ让我知道