How to replace volumes_from in docker-composer v3

后端 未结 1 1641
伪装坚强ぢ
伪装坚强ぢ 2020-12-08 20:41

I want to know the equivalent of the configuration below to suit version 3 of docker-composer.yml! volumes_from is no longer valid so am I supposed to skip the data volume a

相关标签:
1条回答
  • 2020-12-08 21:17

    By default named volumes allow you to share data between containers. But it is some troubles with storing data in the same place on the host machine after restarting containers. But we can use local-persist docker plugin for fix it.

    For migration to version 3 you need

    1) install local-persist docker plugin (if you want to store volumes data to the particular place on the host machine)

    2) modify docker-compose.yml

    version: '3'
    services:
    
      php:
        build: ./docker-files/php-fpm/.
        volumes:
          - data:/code
        working_dir: /code
        links:
          - mysql
    
      nginx:
        image: nginx:latest
        ports:
          - "80:80"
        volumes:
          - ./nginx/default.conf:/etc/nginx/conf.d/default.conf
        volumes:
          - data:/code
        links:
          - php
    
      data:
        image: tianon/true
        volumes:
          - data:/code
    
    # If you use local persist plugin
    volumes:
      data:
        driver: local-persist
        driver_opts:
          mountpoint: /path/on/host/machine/
    
    # Or If you dont want using local persist plugin
    volumes:
      data:
    

    Also you can store volumes data to the host machine with this volumes section:

    volumes:
      data:
        external: true #< it means store my data to the host machine
    

    But you can't specify path for this volume on host machine

    0 讨论(0)
提交回复
热议问题