web-dev-qa-db-ja.com

docker-compose:バインドマウントと管理マウントのマウントを定義します

サービスの定義にdocker-composeを使用しています。 Dockerには、Dockerボリュームの2つの概念があります。まず、bind mount:ホストストレージへのマウントについてです。

docker run -d --name web-app -v $Host/location:/container/location -p 80:80 httpd:latest

次に、managed mount:抽象ストレージであり、ホストに依存しません。

docker run -d --name web-app -v /container/location -p 80:80 httpd:latest

これらの概念をdocker-composeにマッピングしたいと思います。これは、docker-composeを使用するときにbind mountおよびmanaged mountをどのように定義できるかを意味します。

17
Trần Kim Dự

これらのDockerの概念は、Docker Composeのvolumesセクションにあります。 https://docs.docker.com/compose/compose-file/#/volumes-volumedriver

例:

volumes:
  # Just specify a path and let the Engine create a volume
  - /container/location

  # Specify an absolute path mapping
  - ./myfolder/location:/container/location
23
nwinkler

私は非常に遅く答えていますが。しかし、将来的には他の人にも役立つかもしれません。以下は、両方のタイプの構成です。 https://docs.docker.com/compose/compose-file/#volumes

    version: "3.2"
    services:
     web:
      image: httpd:latest
      volumes:
       - type: bind
         source: $Host/location
         target: /container/location
       - type: volume
         source: mydata
         target: /container/location
     volumes:
      mydata:
11
Raman Sharma