はじめに
Docker は、軽量で移植可能なコンテナ化ソリューションを提供することで、ソフトウェアのデプロイを革命的に変えました。開発者とシステム管理者にとって、Docker コンテナのインベントリを表示および管理する方法を理解することは不可欠です。このチュートリアルでは、さまざまなシナリオで Docker コンテナを効果的にリスト、検査、追跡するためのさまざまな方法について説明します。
Docker は、軽量で移植可能なコンテナ化ソリューションを提供することで、ソフトウェアのデプロイを革命的に変えました。開発者とシステム管理者にとって、Docker コンテナのインベントリを表示および管理する方法を理解することは不可欠です。このチュートリアルでは、さまざまなシナリオで Docker コンテナを効果的にリスト、検査、追跡するためのさまざまな方法について説明します。
Docker コンテナは、ソフトウェアを実行するために必要なコード、ランタイム、システムツール、ライブラリ、設定など、すべてを含んだ軽量で独立した実行可能パッケージです。コンテナは、さまざまなコンピューティングプラットフォーム間でアプリケーションの一貫性と再現性を確保します。
コンテナは、アプリケーションをホストシステムおよび他のコンテナから隔離します。これにより、各アプリケーションは独自の環境で実行され、他のアプリケーションとの干渉を防ぎます。
コンテナは、開発環境から本番環境まで、さまざまな環境で一貫して実行できます。「私のマシンでは動作する」という問題を軽減します。
コンテナは、従来の仮想マシンと比較してリソース効率が高く、ホストシステムのカーネルを共有し、オーバーヘッドが少なくなっています。
| 機能 | Docker コンテナ | 仮想マシン |
|---|---|---|
| リソース使用量 | 軽量 | 重量 |
| 起動時間 | 数秒 | 数分 |
| 隔離レベル | プロセスレベル | フルシステム |
| パフォーマンス | 高い | 低い |
Docker コンテナに関する実践的な学習と経験のために、LabEx は、開発者がコンテナ技術を習得するのに役立つインタラクティブな環境と包括的なチュートリアルを提供しています。
現在実行中のコンテナを表示するには、docker ps コマンドを使用します。
docker ps
停止済みを含むすべてのコンテナを表示するには:
docker ps -a
Docker は、特定のコンテナを表示するための強力なフィルタリングオプションを提供します。
## ステータスでフィルタリング
docker ps -f "status=running"
## イメージでフィルタリング
docker ps -f "ancestor=ubuntu:latest"
特定の列でコンテナ一覧表示をカスタマイズします。
docker ps --format "table {{.ID}}\t{{.Image}}\t{{.Status}}"
特定のコンテナの詳細情報を取得します。
docker inspect [CONTAINER_ID]
| 属性 | 説明 | 例 |
|---|---|---|
| コンテナ ID | ユニークなコンテナ識別子 | a1b2c3d4e5f6 |
| イメージ | 使用されたベースイメージ | ubuntu:latest |
| コマンド | 実行中のコマンド | /bin/bash |
| 作成日時 | コンテナ作成日時 | 2 時間前 |
| ステータス | 現在のコンテナステータス | 45 分稼働中 |
| ポート | 公開されたポート | 80/tcp |
| 名前 | コンテナ名 | friendly_newton |
Docker コンテナインベントリを使用する際は、LabEx では、筋肉記憶と理解を構築するために、制御された環境でこれらのコマンドを実践することを推奨します。
docker start コマンドを使用してコンテナを起動します。
docker start [CONTAINER_ID]
実行中のコンテナを正常に停止します。
docker stop [CONTAINER_ID]
単一の命令でコンテナを再起動します。
docker restart [CONTAINER_ID]
コンテナ内で対話型のシェルを起動します。
docker run -it ubuntu:latest /bin/bash
アクティブなコンテナでコマンドを実行します。
docker exec [CONTAINER_ID] command
CPU とメモリの使用量を制御します。
docker run --cpus=2 --memory=1g ubuntu:latest
コンテナのパフォーマンスを追跡します。
docker stats [CONTAINER_ID]
| テクニック | コマンド | 説明 |
|---|---|---|
| 作成 | docker create | コンテナの準備 (起動なし) |
| 実行 | docker run | コンテナの作成と起動 |
| 停止 | docker stop | コンテナの正常な停止 |
| 削除 | docker rm | コンテナの削除 |
| 一時停止 | docker pause | コンテナの一時的な停止 |
コンテナポートをホストに公開します。
docker run -p 8080:80 nginx:latest
隔離されたコンテナネットワークを作成します。
docker network create mynetwork
docker run --network=mynetwork nginx:latest
実行中のコンテナからイメージを生成します。
docker commit [CONTAINER_ID] myimage:backup
移行のためにコンテナの状態を保存します。
docker export [CONTAINER_ID] > container.tar
包括的な Docker コンテナ管理のために、LabEx では、実践的なスキルを習得するために、制御されたシミュレーション環境でこれらのテクニックを実践することを推奨します。
Docker コンテナインベントリ管理をマスターすることは、堅牢かつ効率的なコンテナ化環境を維持するために不可欠です。Docker CLI コマンドと高度なフィルタリング技術を活用することで、実行中および停止済みのコンテナに関する包括的な情報を取得し、より良いリソース管理とシステム監視を実現できます。