問題タブ [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.
docker - docker -v コマンドについて
コマンドの使用法を理解しようとして、YouTube でこのチュートリアルを行っていました。-v
作者はなぜこの-v
コマンドを使用しているのですか? 彼は次のようにコマンドを使用します。
これで、上記のコマンドをある程度理解できました。
--name=my_datastore
コンテナに特定の名前を付けます。-d busybox
イメージに基づいて、デタッチ モードでコンテナを起動しますbusybox
。
コマンドが実行されると、以下の行がコンソールにエコーされます。
今、私が理解していない部分は次のとおりです。
-v
ここでコマンドが使用されている理由と、パスが/var/lib/mysql
指定されている理由を教えてください。
上記の行が使用されている理由と、どのようなコンテキストで使用されているかを理解するのに苦労しています。誰でも説明できますか?
docker - docker-compose.yml で「docker volume create --name data」コマンドを複製します
でコンテナを構築していてdocker-compose
、Docker の新しいボリューム API を使用したいのですが、方法がわかりません。
私は次のように言いたいですdocker-compose up -d
:
- ボリュームを作成するか、すでに作成されている場合はそれを使用します。
- 以前のボリューム コンテナーのデータを使用してサービス コンテナーを作成します。
jenkins - Docker Compose で $(...) を追加する方法
CentOS7でjenkins-serverを起動するためのものを含むdocker-compose.ymlがあります:
しかし、 でエラーが発生し続けるため、作成を実行できません$(which docker):/usr/bin/docker:ro
。これを修正するにはどうすればよいですか?
エラー:ERROR: Invalid interpolation format for "volumes" option in service "jenkins": "$(which docker):/usr/bin/docker:ro"
環境変数を含めることはまだできませんか? 私は最も正しい解決策を探しています。ありがとう
docker - Dockerfile で既存の Docker ボリュームを使用する方法
新しい docker イメージを作成しました。新しいフォルダを作成します/hello
。このイメージをコンテナーとして実行すると、docker exec -it
..bash コマンドでコンテナーにアクセスでき、実行するls
と/hello
フォルダーが表示されます。
この/hello
フォルダーは、Docker ボリューム コンテナーにも保存されます。そのため、コンテナーを既存の Docker ボリュームにリンクしました。だから粘り強い。
今私の質問です: Dockerfile で次のことを実行することは可能ですか?
新しいイメージは、以前のコンテナーと同じボリュームを使用し、/hello
ファイルを独自のコンテナーにコピーする必要があります。
これはdockerファイルで実行できますか?
docker - Docker ボリュームを Mesos/Marathon の永続ボリュームとして使用するには?
CoreOS で Mesos および Ceph クラスターを実行し、Ceph RBD Docker ボリューム プラグインが動作していますが、これを Mesos/Marathon でどのように使用できるかは非常に不明です...rbd
単一の Docker コンテナーのボリュームの作成/使用は問題なく動作しています。
Marathon を介したこれらのボリュームの自動作成 (および、Mesos スレーブ間の「タスク移行」の場合は再マッピング) を扱う記事/ブログ投稿/ものは見つかりません。私にとって特に重要なのは、各インスタンスに独自のボリュームが必要な場合にステートフル サービスの複数のインスタンスを実行する方法です ( Mesos/Marathon の MongoDB ReplicaSet を想像してください)。
私はMesosの永続的なボリュームのドキュメントを知っており、マラソンの問題も見ましたが、これがどのように、またはいつ使用可能になるかについてはまだ非常に混乱しています...
ここにもSOに関する他の質問があります:
残念ながら、この特定の問題に対する答えは実際にはありません。
RexRay を使用したEMC コードの例も、単一のインスタンスの例のみをカバーしていますが、これも上記のボリューム プラグインで簡単に処理できます。
このnginx-data
場合、ボリュームは自動的に作成されます。しかし、永続ボリュームと複数のインスタンスを使用したい場合はどうすればよいでしょうか?
performance - Docker ボリュームのパフォーマンス低下
ホスト マシンにマウントされたボリュームのパフォーマンスと Docker ボリューム (-v オプションを使用して作成) のパフォーマンスを比較するために、fio を使用していくつかのパフォーマンス ベンチマークを実行していました。次のコマンドを使用して、両方のボリュームで IO を実行しています。
fio --name=seqwrite --ioengine=libaio --iodepth=1 --rw=write --bs=8M --direct=1 --size=1024M --numjobs=24 --runtime=300 --group_reporting
ホストにマウントされたボリュームには、ext4 を使用してフォーマットされた単一の SATA ドライブ (2TB) を使用しています。
Docker ボリュームのスループットは、ホストにマウントされたボリュームの 125 ~ 130 MB/秒と比較して、約 60MB/秒です。また、Docker コンテナー内で同じホスト ボリュームをバインド マウントすると、同じ 125 ~ 130 MB/秒のスループットが得られます。「-v」オプションを使用して Docker ボリュームを作成すると、パフォーマンスが低下するという既知の問題はありますか?それとも、パフォーマンスのテストと比較の方法論に誤りがありますか?