I'm using docker-compose for defining my service. In docker, there are two concepts for docker volume. Firstly is about bind mount
: mount on host storage.
docker run -d --name web-app -v $HOST/location:/container/location -p 80:80 httpd:latest
Secondly is about managed mount
: abstract storage, not depend on host.
docker run -d --name web-app -v /container/location -p 80:80 httpd:latest
I want to map those concepts to docker-compose. It means how can I define bind mount
and managed mount
when using docker-compose.
Although I am answering very late. But maybe it helps other people in future. Below is the configuration for both types. https://docs.docker.com/compose/compose-file/compose-file-v3/#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: