作業プロセスで docker イメージを使用したい。たとえば、larryprice/sass を使用して SASS ファイルを CSS にコンパイルしたいとします。このイメージは非常に単純です。
FROM ruby:2.2
RUN gem install sass
WORKDIR /tmp
ENTRYPOINT ["sass", "--watch", "/src"]
Windows 10、Docker 1.11、および VirtualBox 5.0.16 を使用しています。
論理ドライブ D - D:\Projects\Foo\Bar\web\sass にマップされた作業用 SSD に配置されたプロジェクト ファイル
したがって、私の問題は次のとおりです。ドライブ D からコンテナーにボリュームをアタッチする場合: ($PWD または MINGW スタイルのフルパス /D/Projects/Foo/Bar/web/sass) 例
cd /D/Projects/Foo/Bar/web
docker run --name sass -v $PWD/sass:/src --rm larryprice/sass
コンテナーは SASS ファイルを認識できません。
$ docker exec -i -t sass /bin/bash
root@541aabac9ceb:/tmp# ls -al /src/
total 4
drwxr-xr-x 2 root root 40 May 3 13:05 .
drwxr-xr-x 50 root root 4096 May 3 13:05 ..
しかし、システム ディスク (C:) からボリュームをマウントすると、すべて正常に動作します。
$ docker run --name sass -v ~/sass:/src --rm larryprice/sass
[Listen warning]:
Listen will be polling for changes. Learn more at https://github.com/guard/listen#polling-fallback.
>>> Sass is watching for changes. Press Ctrl-C to stop.
>>> New template detected: ../src/test.sass
write /src/test.css
write /src/test.css.map
Windows で必要な場所からボリュームをマウントするにはどうすればよいですか? または、私の場合、何が間違っていますか?
psパスに先頭のスラッシュを追加しても機能しません:
docker run --name sass -v //d/Projects/Foo/Bar/web/sass:/src --rm larryprice/sass