コンテナ内のディレクトリ /root を ホストのディレクトリ /tmp にマウントする.
docker run -v /tmp:/root myImage
dotcloud - Mounting directory from parent system to container in docker - Stack Overflow
コンテナ内から見えない...
This definitely does not work on OSX using boot2docker.
Mac OSX ではできない?
Docker を boot2docker で使う場合,
ファイルシステムでいうところの
コンテナとホストの間に dockerサーバ が存在する.
はじめてのDocker on Mac OS X | Developers.IO
なので, 共有が2段階になっている.
以下の方法を試す.
How to share folders with docker containers on OSX
1. OSX と dockerサーバ(VM) 間の共有
sshfs-fuse を使う.
Filesystem in Userspace - Browse /sshfs-fuse at SourceForge.net
まず, OSX のリモートログイン機能を開始する.
Docker サーバに入って OSXのユーザディレクトリをマウントする.
$username と $ipadress は, OSX設定で許可した それぞれ.
$ boot2docker ssh
docker@boot2docker:~$ tce-load -wi sshfs-fuse
docker@boot2docker:~$ mkdir ~/osx
docker@boot2docker:~$ sudo sshfs $username@$ipaddress:/Users/$username/ /home/docker/osx/
2. dockerサーバ(VM) とコンテナ間の共有
通常の docker オプション -v による共有しながらのイメージ起動.
$ docker run -it -v /home/docker/osx/somefolder:/opt/somefolder ubuntu bash
これで,
コンテナ内 /opt/somefolder が
OSX の /Users/$username/somefolder と
共有されている.
追記:
とかいう話もバージョンアップで解消された.
docker 1.3 で MacOSX でもフツーに共有できようになった