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

推薦する

Web 開発の面接と筆記試験に必須の知識(必読)

HTML のインライン要素とブロックレベル要素の違い:標準的なドキュメント フローでは、ブロック ...

MySQL 8.0.21 無料インストール版 設定方法 グラフィックチュートリアル

MySQLをインストールする6つの手順(インストールパッケージのみがインストール場所を選択できます)...

MySQL MGR の利点は何ですか?

MGR (MySQL グループ レプリケーション) は、バージョン 5.7 で追加された新しい機能...

MySQLでビューを作成する方法

基本的な構文CREATE VIEW ステートメントを使用してビューを作成できます。構文の形式は次のと...

jsはCanvasを使用して複数の画像を1つの実装コードにマージします

解決 関数 mergeImgs(リスト) { const imgDom = document.cre...

MySQL ストアド プロシージャの in、out、inout パラメータの例と概要

ストアドプロシージャ1. ストアドプロシージャを作成し、グローバル変数を表示する mysql>...

スクロール時に選択領域のフォント色を暗くするために CSS を使用するサンプルコード

日付ピッカーをカプセル化する場合、選択時にフォントの色を暗くする必要があります。実装後の効果を見てみ...

Vueプロジェクトのフロントエンドを最適化およびパッケージ化するための必須のボーナスアイテム

目次序文1. ルーティングの遅延読み込み1. ルートの遅延読み込みが必要なのはなぜですか? 2. ル...

Linux システムでのユーザー管理の概要

目次1. ユーザーとユーザーグループの重要性1) ユーザーの存在意義2) ユーザーグループの重要性2...

フレックスボックスレイアウトの最終行の左揃えの実装アイデア

フレックスレイアウトを使用すると、9つの正方形のグリッドであれば、図に示すように均等に分割できます。...

node.js が大規模プロジェクトに適さない理由

目次序文1. アプリケーションコンポーネント2. アプリケーションの種類3. アプリケーションサービ...

サーバーの購入と初期構築方法

しばらくサーバーいじってなかったけど、やることがなくなったのでモバイルワークスに行って海外サーバーを...

CSS コンテナ背景 10 色グラデーション デモ (linear-gradient())

文法 背景: linear-gradient(direction,color-stop1,color...

Mysqlの自動増分IDについて知らないことがあるかもしれません

導入: MySQL を使用してテーブルを作成する場合、通常は自動インクリメント フィールド (AUT...

Docker Swarm クラスタ管理の使用と原理の分析

Swarm クラスター管理導入Docker Swarm は Docker 用のクラスター管理ツールで...