web-dev-qa-db-fra.com

docker-compose: définir le montage pour le montage lié et le montage géré

J'utilise docker-compose pour définir mon service. Dans Docker, il existe deux concepts de volume Docker. Est d'abord sur bind mount: montage sur le stockage hôte.

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

Deuxièmement, c'est managed mount: stockage abstrait, ne dépend pas de l'hôte.

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

Je veux mapper ces concepts à docker-composer. Cela signifie comment puis-je définir bind mount et managed mount lors de l'utilisation de docker-compose.

17
Trần Kim Dự

Vous pouvez trouver ces concepts Docker dans la section volumes de Docker Compose: https://docs.docker.com/compose/compose-file/#/volumes-volumedriver

Exemples:

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

Même si je réponds très tard. Mais peut-être que cela aidera d'autres personnes à l'avenir. Vous trouverez ci-dessous la configuration des deux types. 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