컨테이너를 사용하여 호스트의 디렉토리를 마운트 할 수 있다는 것을 알고 있습니다.
docker run -t -i -v '/on/my/host:/on/the/container' ubuntu /bin/bash
둘 이상의 호스트-컨테이너 쌍을 작성하는 방법이 있습니까? 예를 들어 쉼표로 구분 된 목록 또는 배열을 전달 하시겠습니까?
답변
여러 -v
인수를 전달하십시오.
예를 들어 :
docker -v /on/my/host/1:/on/the/container/1 \
-v /on/my/host/2:/on/the/container/2 \
...
답변
Docker는 이제을 사용하여 마이그레이션하는 것이 좋습니다 --mount
.
여러 볼륨 마운트는 현재 Docker 설명서에 자세히 설명되어 있습니다.
보낸 사람 : https://docs.docker.com/storage/bind-mounts/
$ docker run -d \
-it \
--name devtest \
--mount type=bind,source="$(pwd)"/target,target=/app \
--mount type=bind,source="$(pwd)"/target,target=/app2,readonly,bind-propagation=rslave \
nginx:latest
원래의 오래된 답변은 여전히 작동해야합니다. 현재 가장 잘 알려진 방법으로 답변을 유지하려고합니다.
답변
명령에 -v
옵션을 여러 번 사용 docker run
하여 컨테이너에 여러 디렉토리를 마운트 할 수 있습니다 .
docker run -t -i \
-v '/on/my/host/test1:/on/the/container/test1' \
-v '/on/my/host/test2:/on/the/container/test2' \
ubuntu /bin/bash
답변
볼륨에 대해 읽기 전용 또는 읽기 및 쓰기 전용을 가질 수 있습니다
docker -v /on/my/host/1:/on/the/container/1:ro \
docker -v /on/my/host/2:/on/the/container/2:rw \
답변
아니면 할 수 있습니다
docker run -v /var/volume1 -v /var/volume2 DATA busybox true