2017-12-13 18 views
1

내 컨테이너 중 하나에 명명 된 볼륨을 만들고 싶습니다.기본값을 변경하지 않고 특정 위치에 특정 명명 된 고정 볼륨을 저장하는 방법은 무엇입니까?

이 컨테이너는 내가 실행하는 다른 컨테이너보다 훨씬 많은 저장소가 필요하므로 여유 공간이 많은 다른 디스크에이 특정 볼륨을 저장하고 싶습니다.

다른 볼륨을 기본 디스크에두고 싶지만 이름이 지정된 볼륨 하나만 다른 디스크로 이동해야합니다.

바인드 마운트를 사용하고 싶지는 않습니다. 백업과 마이그레이션이 더 복잡해지기 때문입니다.

내가 생각할 수있는 유일한 방법은 볼륨이 생성 된 후 (컨테이너가 정지 된 상태) 수동으로 볼륨을 이동하고 원래 위치 인 /var/lib/docker/...에서 다른 하드 드라이브의 새 위치로 심볼릭 링크를 만드는 것입니다. 이것은 매우 수동이지만, 더 나은 방법이 있어야한다고 생각합니다.

이 작업을 수행하는 데 권장되는 방법은 무엇입니까?

+0

https://github.com/projectatomic/docker-lvm-plugin 도움이 될 수 있습니다, 확실하지가 얼마나 신뢰할 수 – Matt

답변

3

로컬 볼륨 드라이버 사용

docker volume create -d local -o type=none -o o=bind -o device=/host/path volname 

(this github comment에서 촬영)

+0

을 마운트의'bind'타입인가,'volume'마운트 타입인가? 'docker run -v/host/path :/mypath ... '와 다른가요? – springloaded

+0

기술적으로 모든 볼륨은 바인드 마운트입니다. _bind mounts_ 을 포함하여 가능한 모든 마운트 유형을 지정할 수있는 로컬 드라이버를 사용하는 명명 된 볼륨입니다. 이름이 지정된 볼륨을 원하기 때문에 필요로하는 것처럼 보이지만 지정할 마운트 마운트/호스트 마운트는 아닙니다. 호스트 위치는 -v 인수에 있습니다. – programmerq