近年、Docker コンテナはますます広く使用されるようになり、アプリケーションをコンテナの形式でパッケージ化し、さまざまな環境への移植を容易にします。ただし、シナリオによっては、Docker コンテナ内のデータやコードをコピーする必要がある場合があるため、この記事では、Docker コンテナ内のデータやコードをコピーする方法を紹介します。
Docker コンテナ内のデータとコード
一部のシナリオでは、バックアップ、移行、デバッグなどのさまざまなニーズに対応するために、コンテナ内のデータまたはコードをコピーする必要があります。 Docker では、データとコードは主にコンテナのファイル システムに保存され、異なるコンテナは互いに分離されているため、直接コピーすることはできません。データとコードは、いくつかのコマンドを使用してホストにコピーする必要があります。2 つの一般的な方法を以下に紹介します:
1. docker cp コマンドを使用してデータをコピーします
docker cp コマンドはローカルにコピーできますこのコマンドの使用方法は次のとおりです:
docker cp :
このうち、 はコピーが必要であることを示します。 コンテナの ID または名前、
は、コピーする必要があるコンテナ内のファイル パス、
## を示します。 # は、ホスト パスにコピーする必要があるファイルを示します。
nginx 内の
/etc/nginx/nginx.conf ファイルをホストの
/opt ディレクトリにコピーします。 :
docker cp nginx:/etc/nginx/nginx.conf /opt2. docker commit コマンドを使用してイメージを作成します docker commit コマンドを使用して、コンテナ内のファイル システムを新しいイメージにパッケージ化します 具体的な使用方法は以下の通りです:
docker commit -m "commit message"このうち、
-m オプションは、このコミット操作の説明を示します。
は、イメージにパッケージ化する必要があるコンテナの ID または名前を示します。
は、生成される新しいイメージの名前を示します。
nginx 内のファイル システムを新しいイメージにパッケージ化します。
docker commit -m "backup nginx config" nginx nginx-config-backup要約Docker にデータとコードをコピーします。この記事では、日常業務における一般的な要件を 2 つの側面から実装する方法を紹介します。
- docker cp コマンドを使用してコンテナ内のファイルをローカル マシンにコピーし、バックアップとデバッグを容易にします。
- docker commit コマンドを使用して、コンテナ内のファイル システムを新しいイメージにパッケージ化し、移行とバックアップを容易にします。
以上がDockerコンテナ内のものをコピーする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

Docker画像をエクスポートするには、画像をTarファイルに保存するか、レジストリに押し込む方法が2つあります。エクスポートされた画像は、ローカルDockerデーモンにロードするか、レジストリから引っ張ることで使用できます。

ポートマッピングを使用すると、コンテナの内部ポートをホストポートにマッピングして、外の世界がコンテナ内のサービスまたはアプリケーションにアクセスできるようにします。特定の方法は、Docker Runコマンドの-pオプションを使用してポートマッピングを実行することです。構文は次のとおりです。たとえば、次のコマンドは、コンテナ内の8080ポートをホストの80ポートにマッピングします。DockerRun-P 80:8080 Image -Name。ポートマッピングの利点には、簡単なアクセス、デバッグとテスト、分離、ポート競合、セキュリティ、ファイアウォールの設定に注意を払う必要があります。

Docker画像を作成する方法は?画像を作成するために必要な命令を指定するDockerFileを作成します。 Dockerビルドで画像を構築します。 Dockerタグで画像にタグを追加します。 (オプション)Docker Pushを使用して、画像をレジストリにプッシュします。

Docker画像を実行する方法は?必要な画像を引く:Docker Pull< Mirror Name> run container:docker run< options> <ミラー名とgt;コンテナへの接続:docker exec -it< container id> /bin/bash stopコンテナ:Docker stop< container id>削除コンテナ:docker rm< container id>

マークのない画像を手動で削除するか、Docker CLIプラグインを使用して、バッチでタグを削除することはできません。手動の削除には、マークのない画像を見つけ、ミラーIDを取得し、画像を削除することが含まれます。バッチ削除の場合、コマンドdocker画像を使用できます-f dangling = true -q | Xargs Docker RMIは、すべてのマークのない画像を削除します。

Dockerクラスターを構築する主な方法は2つあります。KubernetesやDocker Swarmなどのコンテナオーケストレーションツールを使用するか、Amazon ECSなどのサードパーティサービスを使用します。コンテナオーケストレーションツールを使用してクラスターを構築するには、クラスターのセットアップ、Dockerコンテナランタイムのインストール、アプリケーションの展開が必要です。サードパーティサービスを使用するには、アカウントの作成、クラスターの作成、アプリケーションの展開のみが必要です。

Docker画像は、アプリケーションコードと依存関係をパッケージ化するポータブルユニットであり、分離コンテナ環境を作成するために使用できます。画像を使用するには、画像を実行するために画像を実行する必要があります(コンテナが作成されます)コンテナの管理(停止、停止、再起動)ボリューム(コンテナとホスト間の共有データ)をマウントしますポートマッピング(ホストからコンテナアプリケーションにアクセス)を設定します

Dockerベースの画像を作成するには、次の手順が含まれます。必要なファイルやディレクトリを含むベースファイルシステムを作成します。必要なパッケージをインストールします。ユーザーとグループを作成します(オプション)。ワーキングディレクトリ(オプション)を設定します。環境変数を構成します(オプション)。変更を保存するために画像を送信してください。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

VSCode Windows 64 ビットのダウンロード
Microsoft によって発売された無料で強力な IDE エディター

EditPlus 中国語クラック版
サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

SublimeText3 Linux 新バージョン
SublimeText3 Linux 最新バージョン

ドリームウィーバー CS6
ビジュアル Web 開発ツール

DVWA
Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、
