問題タブ [docker-volume]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
289 参照

ubuntu - Docker コンテナー ボリュームがホストに書き込みません

こんにちは、docker コンテナー内でいくつかのアセットを生成してホストに配置しようとしています。virtualbox ドライバーで初期化された docker-machine 環境内で実行されているものすべて。

たとえば、私は実行します:

その後

その時点から、実際にdummy.txtホストの$PWD/testfolderフォルダーを確認する必要がありますが、フォルダーtestfolderdummy.txtも(論理的に) ありません。

奇妙なことに、同じセットアップがMacOSXで正しく機能し、ホスト側でファイルを作成しますが、試してみるとUbuntu:14.04が機能しなくなりました。ここに両方の​​コンテナinspectがあります

私が見る限り、それらは両方ともまったく同じです。

docker-machine バージョン 0.7.0-rc2 と 0.6.0 の両方で試しました。docker バージョンは 1.10.3 です。

誰かがそのようなことを経験しましたか?可能なヒントをいただければ幸いです。どうも。

0 投票する
0 に答える
1601 参照

apache - 共有 Docker ボリュームの umask を変更するにはどうすればよいですか?

これは「https://stackoverflow.com/questions/36477636/how-do-i-implement-a-shared-hosting-like-service-with-docker」に関連しています。

docroot に接続できるはずの apache-php コンテナーの束と、同じディレクトリにrw接続できる 1 つの sftp コンテナーをセットアップしようとしています。rwしたがって、共有ボリュームを作成し、両方のコンテナー内にマウントする計画です (sftp コンテナーに関しては、明らかに別の場所にあります)。公式の php:7-apache 起動スクリプトを次のように変更しました。

実際、2 つのumask行は、サンドイッチumask 0002が正しく実行されていることを確認します。ただし、bashコンテナに入ってこれを自分でテストすると、umaskが返さ022れ、ファイルを作成すると、実際には権限が付与され644ます。その後、手動umask 0002で新しいファイルが作成され、アクセス許可664(および775ディレクトリ) が作成されます。

この使用例では、両方のコンテナー (sftp と apache) が共有ボリュームで読み書きできることが重要です。それで、どうすればいいですか?

0 投票する
2 に答える
7848 参照

docker - Docker ボリューム マウントが存在しません

OS X で Docker 1.11 を実行しており、ローカル ボリュームがどこに書き込まれているのかを把握しようとしています。を実行して Docker ボリュームを作成しましたdocker volume create --name mysql。次に実行docker volume inspect mysqlしたところ、次のように出力されました。

問題は/mnt/sda1/var/lib/docker/volumes/mysql/_data、実際には私のマシンには存在しません。コンテナで使用されるまで実際に作成されなかったことが問題なのかもしれないと思ったので、実行してコンテナを起動しdocker run --name mysql -v mysql:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=mysql -P -d mysql:5.7、MySQLでデータベースを作成しましたが、マウントポイントはまだ存在しません。正しいボリュームを使用していることを確認するために実行docker inspect mysqlしたところ、次の結果が得られました。

この時点で、データがどこに書き込まれているのか完全にわかりません。私は何が欠けていますか?

0 投票する
1 に答える
2307 参照

docker - ボリューム エンドポイントがドライブ C: にない場合、Docker コンテナーは Windows ボリューム上のファイルを認識しません。

作業プロセスで docker イメージを使用したい。たとえば、larryprice/sass を使用して SASS ファイルを CSS にコンパイルしたいとします。このイメージは非常に単純です。

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) 例

コンテナーは SASS ファイルを認識できません。

しかし、システム ディスク (C:) からボリュームをマウントすると、すべて正常に動作します。

Windows で必要な場所からボリュームをマウントするにはどうすればよいですか? または、私の場合、何が間違っていますか?

psパスに先頭のスラッシュを追加しても機能しません:

0 投票する
2 に答える
133 参照

docker - 実行ごとに新しいデータ ボリュームを作成する docker run

コンテナからいくつかの構成データを保持したいと考えており、データ ボリュームに関するチュートリアルに従っています。

私は正常にアプリを実行しています:

-v /app/configコンテナーの再起動後も存続する必要がある構成を含むコンテナー内のディレクトリはどこにありますか。

また、コンテナを実行した結果、 にボリュームが作成され/var/lib/docker/volumesます。

ただし、コンテナーを強制終了して再実行すると、データは保持されず、新しいボリュームが次の場所に作成され/var/lib/docker/volumesます。

これらが持続するためのステップになると思いますが、ここで何か不足していますか?

0 投票する
2 に答える
903 参照

docker - -v で VOLUME をマウントしているときにファイルを使用できない

VOLUME ["/log"] を持つ Docker イメージがあります。

コンテナーの実行中に、ホストに存在するフォルダーをマウントしています。

Docker によって VOLUME ["/log"] に書き込まれたすべてのログをホストで利用できるようにしたい。

ログは hostlogfolder によって書き込まれません

ただし、ログは docker 内の場所 /log で利用できます

フォルダをマウントする正しい方法は何ですか?