Docker はファイルをマウントできます。ファイル マウントとは、ホストの指定されたファイルを Docker コンテナ内のファイルにマウントすることを指します。ファイルの場所はユーザーによって管理されます。run コマンドを使用してホスト ファイルをマウントできます。コンテナ内のファイルへの構文は「docker run --name ...」です。
このチュートリアルの動作環境: linux7.3 システム、docker バージョン 19.03、Dell G3 コンピューター。
ファイルのマウントとは、ホストの指定されたファイルを Docker コンテナ内のファイルにマウントすることであり、ファイルの場所はユーザーによって管理されます
例
docker run --name <容器名> -p 80:80 -v <宿主机文件绝对路径:容器内文件绝对路径> -d <仓库名:版本标签> # docker run --name nginx-contain -p 80:80 -v /docker_conf/nginx/html/index.html:/usr/share/nginx/html/index.html -d nginx # 宿主机文件挂载到容器内文件
ps:
1. ホスト ファイルはコンテナ内のファイルを上書きします
拡張知識
Docker のマウントは次のとおりです。これを使用するには、マシンのファイルまたはフォルダーがコンテナー内のファイルまたはフォルダーを上書きします。
機能:
cp コマンドを使用してデータ転送を実現しますが、この方法はより面倒です;
コンテナ ディレクトリを介してマウントします。これにより、コンテナ間の双方向通信を実現できます。ホストとコンテナディレクトリの自動データ同期により、コードのアップロード、構成の変更、ログの同期などのニーズを簡単に実現できます。
注: docker が設定ファイルをマウントするときは、マウントする設定ファイルの内容を間違えないように注意してください。書き込まないと、コンテナ作成後にコンテナを起動できなくなります。
フォルダーのマウント
ホストにフォルダーをロードすると、コンテナー内のフォルダーが確実に上書きされます:
存在しないフォルダーまたは既存のフォルダーを許可しますマウントされる空のフォルダー コンテナーをロードすると、コンテナー内の対応するフォルダーがクリアされます
空でないフォルダーをコンテナーにマウントすると、コンテナー内の元のフォルダーが上書きされます
ファイルマウント
ファイル マウントとフォルダー マウントの最大の違いは次のとおりです。
docker は、ホスト上に存在しないファイルをコンテナー内に既に存在するファイルにマウントすることを禁止します
ファイルのマウントは、同じフォルダー内の他のファイルには影響しません
##既存のファイルをコンテナーにマウントすると、コンテナー内の対応するファイルが上書きされます。ファイルが存在しない場合は、ファイルが作成されます概要ホスト上のファイルはコンテナ内のファイルを確実に上書きしますホストコンテナのマウント結果存在しないファイル 既存のファイル 禁止された動作Exists 存在しないファイル/既存のファイル、新規/上書き (ディレクトリが存在しない場合は、ディレクトリが作成されます)アプリケーション シナリオ上記の分析から、でフォルダがマウントされていることがわかります ファイルはフォルダ全体単位で上書きされるため、コンテナに大量のファイルをマウントする必要がある場合に使用できます。既存のフォルダーがマウントされると、通常は逆に使用されます。つまり、コンテナーの起動後、一部のファイル (ログなど) がコンテナー内のマウント ポイントのフォルダーの下に生成される場合があります。このとき、それらは直接使用できます。対応するホスト上のフォルダーに表示されます。 ファイルのマウントは 1 つのファイルのみを上書きし、コンテナー内の同じフォルダー内の他のファイルには影響しません。これは、実行時にデフォルトの構成を動的に変更するために構成ファイルをマウントするためによく使用されます。 推奨される学習: 「
docker ビデオ チュートリアル 」
以上がdocker でファイルをマウントできますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。