docker-compose: define mount for bind mount and managed mount docker-compose: define mount for bind mount and managed mount docker docker

docker-compose: define mount for bind mount and managed mount


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/locationvolumes:  mydata:


You can find these Docker concepts in the volumes section of Docker Compose: https://docs.docker.com/compose/compose-file/#/volumes-volumedriver

Examples:

volumes:  # Just specify a path and let the Engine create a volume  - /container/location  # Specify an absolute path mapping  - ./myfolder/location:/container/location


I know it's late to answer but I'm mostly writing this for the community.

Answer:

You only need to do it like this:

    volumes:       - ./root/instantclient_12_2/ojdbc8.jar:/etc/kafka-connect/jars/ojdbc8.jar       - type: bind         source: $HOST/etc         target: /kernel-etc

Then, for running it in 'easy to debug mode' do it first with docker-compose up and when you made sure it was working fine put a ring on it by adding a -d at the end.

Important Notes

1-Make sure your docker-compose version is at least 3.2 and in my case, it is3.7.for updating and getting rid of the old version do as below:

sudo apt-get remove docker-composesudo curl -L "https://github.com/docker/compose/releases/download/1.23.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-composesudo chmod +x /usr/local/bin/docker-composesudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

Source: https://github.com/10up/wp-local-docker/issues/58#issuecomment-476786006

2- Don't forget to rm your old container so you don't face weird port-related issues.heres how:

docker container stop YOUR_CONTAINER_IDdocker container rm YOUR_CONTAINER_ID

Good luck.