Windows ホストと Docker コンテナに共有フォルダを設定してマウントする手順

Windows ホストと Docker コンテナに共有フォルダを設定してマウントする手順

Docker コンテナ内のプログラムは、ホスト ディレクトリ内のデータにアクセスして呼び出す必要があることが多く、そのたびにデータをインポートおよびエクスポートするのは非常に面倒で手間がかかります。

次に、ホストマシンの指定されたフォルダーを Docker コンテナに段階的にマウントします。

1. Oracle VM VirtualBoxを開きます。

2. [設定]をクリックし、左側の[共有フォルダー]をクリックします。

3. デフォルトの[c/Users \\?\c:\Users]をダブルクリックして編集します。ここでは、マウントされた共有ディレクトリとしてDドライブ下のデータを設定します。名前は変更できます。ここでは「data」に設定されています。 OKをクリック

4. VirtualBox 仮想マシンを再起動します。再起動の間に待機時間があります。

5. コンテナを作成し、共有ディレクトリにアクセスできるかどうかをテストする

centos イメージに基づいて centos-1 という名前のコンテナを作成し、-v パラメータを使用して D:\data ディレクトリをコンテナの /home ディレクトリにマウントします。

C:\Users\Administrator>docker run -d -it --name centos-1 -v /data:/home centos

9b871d35e1669640dd027a64214b3f78d9faec8b29e91f23aa717d7b7b5036ed

コンテナを入力します:

C:\Users\Administrator>docker exec -it centos-1 /bin/bash

[ルート@e952aff59318 /]#

/home ディレクトリがローカルの D:\data ディレクトリと一致しているかどうかを確認します。

[root@e952aff59318 /]# cd ホーム
[root@e952aff59318 ホーム]# ls
a.txt db ログ sslkey.log

それらが一致していれば、マウントは成功します。

追加知識: Dockerイメージファイルのインポートとエクスポート、バッチのサポート

仕事で海外のイメージをプルする必要があることが多いのですが、ネットワークの制限などにより、社内でプルするのは非常に時間がかかるため、Amazon サーバーからイメージをプルし、エクスポートしてローカルにダウンロードしてから開発環境にインポートすることに慣れています。

1. 画像IDを表示する

sudo docker イメージ
リポジトリ タグ イメージ ID 作成 サイズ
quay.io/calico/node v1.0.1 c70511a49fa1 6 週間前 257 MB
hello-world 最新 48b5124b2768 2か月前 1.84 kB
quay.io/coreos/flannel v0.7.0 63cee19df39c 2か月前 73.8 MB
quay.io/calico/cni v1.5.5 ada87b3276f3 2か月前 67.1 MB

2. パッケージ化するイメージを選択し、パッケージ化コマンドを実行します。

sudo docker save -o quay.io-calico-node-1.tar quay.io/calico/node

エクスポートファイルxxx.tarが現在のディレクトリに生成され、このファイルはローカルにダウンロードされます。

3. 上記のパッケージ化されたイメージを開発環境にインポートする

docker load -i quay.io-calico-node-1.tar

0a43edc59c00: レイヤー 27.59 MB/27.59 MB を読み込んでいます
69a5574b2581: レイヤー 3.636 MB/3.636 MB を読み込んでいます
fb0933709f36: レイヤー 3.913 MB/3.913 MB を読み込んでいます
7384abd120f5: レイヤー 3.859 MB/3.859 MB を読み込んでいます
e34911610de0: レイヤーをロード中 27.06 MB/27.06 MB
d6ec327c8cbe: レイヤー 6.656 kB/6.656 kB を読み込んでいます
読み込まれた画像 ID: sha256:ada87b3276f307a6b1b1ada15820b6c9842fd839fe5cc46ad5db8af81f7fd271

この時点で、ローカルイメージを使用できます。

4. 画像の一括インポートおよびエクスポートツール

私のgithubにアクセスして

Windows ホストと Docker コンテナで共有フォルダーを設定してマウントする上記の手順は、エディターが皆さんと共有する内容のすべてです。参考になれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • DockerコンテナにNFS共有ディレクトリをマウントする実装
  • Docker - コンテナマウントディレクトリを変更する3つの方法のまとめ
  • Dockerはローカルディレクトリとデータボリュームコンテナ操作をマウントします
  • dockerログマウントの問題を解決する
  • Dockerはelasticsearchイメージを起動し、ディレクトリをマウントした後にエラーを解決します
  • Dockerはnginxをデプロイし、フォルダとファイル操作をマウントします
  • docker nginxコンテナの起動とローカルへのマウントの詳細な説明
  • docker run で ./ 相対パスを使用してファイルまたはディレクトリをマウントできない問題を解決する

<<:  HTML+CSSは、要素の位置までスクロールして読み込みアニメーション効果を表示します。

>>:  州と市町村の連携を簡単に実現するJavaScript

推薦する

Vueはページング機能を実装する

この記事の例では、ページング機能を実装するためのVueの具体的なコードを参考までに共有しています。具...

TypeScript インターフェース定義ケースチュートリアル

インターフェースの役割:インターフェース (英語: interface) の機能は、簡単に言えば、コ...

React NativeのScrollViewプルダウンリフレッシュ効果

この記事では、React Native ScrollViewのプルダウンリフレッシュ効果の具体的なコ...

MYSQL大規模書き込み問題の最適化の詳細な説明

概要: MySQL のパフォーマンス最適化について話すとき、誰もがクエリ パフォーマンスを向上させる...

簡単な手順で純粋な CSS3 で 3D 反転効果を実現

フロントエンド開発者の必須科目であるCSS3は、多くの基本的なアニメーション効果を実現するのに役立ち...

Linux CentOS6.5 yum インストール mysql5.6

この記事では、Linux yumを使用してmysql5.6をインストールする簡単な手順を参考までに紹...

MySQL 8.0.12 のインストールと使用方法のチュートリアル

MySQL 8.0.12のインストールと使用のチュートリアルを録画しました。ウィンドウズまず、公式ウ...

HTML マルチヘッダーテーブルコード

1. マルチヘッダーテーブルコードコードをコピーコードは次のとおりです。 <!DOCTYPE ...

テーブル切り替えのための JavaScript プラグインのカプセル化

この記事では、テーブル切り替えプラグインを実装するためのJavaScriptのカプセル化コードを参考...

Linux で Multitail コマンドを使用するチュートリアル

MultiTail は、tail コマンド機能と同様に、複数のドキュメントを同時に監視するために使用...

mysql mycat ミドルウェアのインストールと使用

1. mycatとはエンタープライズアプリケーション開発のための完全にオープンソースの大規模データベ...

WeChatミニプログラムの開発をスピードアップするためのヒント

1. app.jsonを使用してページを作成する私たちの通常の開発習慣によれば、新しいページを作成す...

Tomcat プロセスの CPU 使用率が高い場合のトラブルシューティング記録を記録する

この記事では主にTomcatプロセスを記録し、TCP接続が多すぎることによるCPU使用率の過剰のトラ...

MySQLストレージエンジンについて学びましょう

目次序文1. MySQL メインストレージエンジン: 2. さまざまなストレージエンジンがテーブルを...

MySQL InnoDBストレージエンジンについて簡単に説明します

序文:ストレージ エンジンはデータベースの中核です。MySQL の場合、ストレージ エンジンはプラグ...