扩展撰写项目时docker如何管理卷?

时间:2017-02-25 14:01:53

标签: docker docker-compose

如果任何容器的10个实例需要预先存储,那么在10个实例中docker将如何为它们管理卷,我在docker-compose.yml中定义了卷

我没有找到任何与此相关的信息,当多个实例运行时会发生什么? 1. docker会为每个实例创建新文件夹 2.共享相同的文件夹给所有人(这将导致数据纠正)?

这是我的样本docker-compose.yml

version: '2'

services:
    consul:
        #image: myappteam/consul:3.4.0
        build: ./consul
        container_name: consul
        hostname: consul
        domainname: consul
        restart: always
        volumes:
           - myapp-data:/data/consul
    consului:
        #image: myappteam/consul-ui:3.4.0
        build: ./consul-ui
        container_name: consul-ui
        hostname: consul-ui
        domainname: consul-ui
        ports:
          - 8500:8500
        restart: always
        volumes:
           - myapp-data:/data/consului
    nginx:
        #image: myappteam/nginx:3.4.0
        build: ./nginx
        container_name: nginx
        hostname: nginx
        domainname: nginx
        ports:
          - "80:80"
        volumes:
           - myapp-logs:/logs/nginx_access_logs
           - myapp-logs:/logs/nginx_error_logs
        restart: always


volumes:
  myapp-data:
  myapp-logs:
  myapp-bundle:
  myapp-source:

所以在上面的例子中,myapp-data是计划我希望拥有所有数据,所以我想在我增加nginx实例时,领事,他们会使用相同的myapp数据量还是创建新卷?因为如果它将使用相同的实例,那么数据将被破坏,因为两个实例将写入相同的文件..

那么在那种情况下该怎么办?

0 个答案:

没有答案