私はローカルのVirtualBoxプロバイダ(boot2dockerが入っています)を持った私のUbuntu 14.04 LTSホストマシンで開発中のドッカーを作成しています。Docker Machine + Docker Compose + Volumes on Ubuntu
最近私は(Pycharmとの統合のため)ドッカーマシンを試してみることにしましたが、私はいくつかの新しいコードを保存すると、ドッカーコンテナが自動的にはもう自動的に更新されず、私はdocker-compose.yml
ウェブサービスで自分のボリュームをコメントアウトしているので、私はエラーを取得するので、私は理解していないので、私はこれを理解してhere私はそれをコメントする必要があります。
私はインターネット上で多くのことを読んできました。ドッカーマシンをUbuntuでドッキングしてうまくいくための良い単純なアプローチがあるかどうかを知りたいと思います。
DockerFile
FROM ubuntu:14.04.3
ENV PYTHONUNBUFFERED 1
RUN apt-get update && apt-get install -y \
build-essential \
git-core \
python2.7 \
python-pip \
python-dev \
libpq-dev \
postgresql-client-9.3 \
libjpeg-dev \
binutils \
libproj-dev \
gdal-bin
RUN mkdir /vagrant
WORKDIR /vagrant
RUN mkdir requirements
COPY requirements requirements
RUN pip install -r requirements/local.txt
COPY . /vagrant/
ドッキングウィンドウ-compose.yml
postgis:
image: mdillon/postgis:9.3
ports:
- "5432:5432"
environment:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: "postgres"
# volumes:
# - /etc/postgresql
# - /var/log/postgresql
# - /var/lib/postgresql
web:
build: .
dockerfile: Dockerfile
command: python manage.py runserver 0.0.0.0:8000 --settings=xxx.settings.local
# https://stackoverflow.com/a/31567743/977622
# volumes:
# - .:/vagrant
ports:
- "8000:8000"
links:
- "postgis:postgis"
UPDATE:私は私のVM内でmount
コマンドを実行したときに
私が取得:
tmpfs on/type tmpfs (rw,relatime,size=918096k)
proc on /proc type proc (rw,relatime)
sysfs on /sys type sysfs (rw,relatime)
devpts on /dev/pts type devpts (rw,relatime,mode=600,ptmxmode=000)
tmpfs on /dev/shm type tmpfs (rw,relatime)
fusectl on /sys/fs/fuse/connections type fusectl (rw,relatime)
/dev/sda1 on /mnt/sda1 type ext4 (rw,relatime,data=ordered)
cgroup on /sys/fs/cgroup type tmpfs (rw,relatime,mode=755)
cgroup on /sys/fs/cgroup/cpuset type cgroup (rw,relatime,cpuset)
cgroup on /sys/fs/cgroup/cpu type cgroup (rw,relatime,cpu)
cgroup on /sys/fs/cgroup/cpuacct type cgroup (rw,relatime,cpuacct)
cgroup on /sys/fs/cgroup/blkio type cgroup (rw,relatime,blkio)
cgroup on /sys/fs/cgroup/memory type cgroup (rw,relatime,memory)
cgroup on /sys/fs/cgroup/devices type cgroup (rw,relatime,devices)
cgroup on /sys/fs/cgroup/freezer type cgroup (rw,relatime,freezer)
cgroup on /sys/fs/cgroup/net_cls type cgroup (rw,relatime,net_cls)
cgroup on /sys/fs/cgroup/perf_event type cgroup (rw,relatime,perf_event)
cgroup on /sys/fs/cgroup/net_prio type cgroup (rw,relatime,net_prio)
cgroup on /sys/fs/cgroup/hugetlb type cgroup (rw,relatime,hugetlb)
/dev/sda1 on /mnt/sda1/var/lib/docker/aufs type ext4 (rw,relatime,data=ordered)
none on /mnt/sda1/var/lib/docker/aufs/mnt/137fb1ad9a432a3f4fa47667ecc9991c10149b71f02dfc06a8134fc348532a3d type aufs (rw,relatime,si=462e07a762a4065f,dio,dirperm1)
shm on /mnt/sda1/var/lib/docker/containers/137fb1ad9a432a3f4fa47667ecc9991c10149b71f02dfc06a8134fc348532a3d/shm type tmpfs (rw,nosuid,nodev,noexec,relatime,size=65536k)
mqueue on /mnt/sda1/var/lib/docker/containers/137fb1ad9a432a3f4fa47667ecc9991c10149b71f02dfc06a8134fc348532a3d/mqueue type mqueue (rw,nosuid,nodev,noexec,relatime)
nsfs on /var/run/docker/netns/2e4dbeed7a66 type nsfs (rw)
マイsh aredフォルダは最も安全(最も互換性のある)の賭けは、イメージを再構築し、それぞれがあなたが作る変更のために(コンテナを再配備することになるだろう、フォルダパスは、残念ながら/home
リンクされた問題の説明と同様に、ホストボリュームのマウントは、Dockerを実行している_host_を基準にしています。 Dockerマシンがプロバイダ内で外部で実行されている場合、そのボリュームはローカルマシンのデータではありません。 Dockerマシンはどこで動作していますか? –
私はVirtualBox @AndyShinnでdockerマシンを実行しています – psychok7
VMにログインして( 'docker-machine ssh')、マウント( 'mount')を取得して、ホストから何かがVMにマウントされているかどうか確認できますか?そうでない場合、これはVMでは不可能です。コンテナがアクセスできるようにするには、ホストフォルダをVMと共有する必要があります。 –