Dockerコンテナ操作コマンドの詳細な理解:コンテナ管理の鍵をマスターする

Dockerコンテナ操作コマンドの詳細な理解:コンテナ管理の鍵をマスターする

Docker は、最新のアプリケーション開発と展開の業界標準となっています。コンテナ化テクノロジーを使用して、軽量で移植性が高く、スケーラブルな方法でアプリケーションを構築、公開、実行します。しかし、最近職場で、Docker コンテナの操作コマンドにあまり慣れていない人がいることに気づきました。したがって、この記事では、各コマンドとそのパラメータの詳細な説明を含め、Docker コンテナ操作のさまざまな側面を詳しく紹介することを目的としています。この記事を通じて、Docker の理解と応用をさらに向上させるために、一緒に議論し、学ぶことができれば幸いです。

コンテナを作成する

コンテナを作成するには、docker runとdocker createの2つの方法があります。

ドッカー実行

docker run コマンドは、まず Docker ホスト上で指定されたコンテナ イメージを検索します。イメージが存在しない場合は、Docker は Docker Hub または別のイメージ レジストリからイメージをダウンロードします。イメージが見つかるかダウンロードされると、Docker はそのイメージに基づいて新しいコンテナ インスタンスを作成します。コンテナが作成されると、docker run コマンドによってコンテナが起動されます。

docker run コマンドの基本的な構文は次のとおりです。

 docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
  • オプション: コンテナのさまざまなプロパティを構成するために使用されるオプションのパラメータ。
  • IMAGE: 実行するコンテナ イメージを指定する必須パラメーター。
  • COMMAND: コンテナーで定義されたデフォルトのコマンドをオーバーライドするオプションのパラメーター。
  • ARG...: コンテナ内のコマンドに渡されるオプションのパラメーター。

一般的な docker run パラメータとオプションを次に示します。

  • -i または --interactive: コンテナを対話モードで実行し、ユーザー入力を許可します。
  • -t または --tty: 疑似端末 (疑似 TTY) を割り当てます。通常は対話性をサポートするために -i と共に使用されます。
  • -d または --detach: コンテナをバックグラウンド モードで実行し、現在のターミナルを占有しません。
  • --name: コンテナの名前を指定します。
  • --rm: コンテナが停止したら自動的に削除します。
  • -e または --env: 環境変数を設定します。
  • -p または --publish: コンテナ ポートをホスト ポートにマップします。
  • -v または --volume: ホスト ファイルまたはディレクトリをコンテナーにマウントします。
  • --network: コンテナが接続されているネットワークを指定します。
  • --link: 別のコンテナにリンクします。
  • --entrypoint: コンテナで定義されているデフォルトのエントリポイントをオーバーライドします。
  • --restart: Docker コンテナの再起動戦略のオプション。

たとえば、xj_pandora という名前のコンテナを対話型ターミナル モードで実行するには、xj/pandora:1 を使用します。イメージの場合は、次のコマンドを実行します。

 docker run -itd -p 8899:8899 --name xj_pandora -e PUID=0 -e PGID=0 -e PANDORA_SERVER=0.0.0.0:8899 -e PANDORA_CLOUD=cloud -e TZ=Asia/Shanghai --restart=always xj/pandora:1.0
  1. docker create docker create コマンドは一般的に使用されるコマンドではなく、通常は他のコマンドと一緒に使用されます。 docker create の主な機能は、新しいコンテナを作成することであり、コンテナを起動することではありません。コンテナの一意の識別子 (コンテナ ID) を返します。この識別子を使用して、他のコマンドを使用してコンテナをさらに構成し、起動することができます。

以下は、docker create コマンドの基本的な構文とオプションです。

 docker create [OPTIONS] IMAGE [COMMAND] [ARG...]
  • オプション: コンテナのさまざまなプロパティを構成するために使用されるオプションのパラメータ。
  • IMAGE: 使用するコンテナイメージを指定する必須パラメーター。
  • COMMAND: コンテナーで定義されたデフォルトのコマンドをオーバーライドするオプションのパラメーター。
  • ARG...: コンテナ内のコマンドに渡されるオプションのパラメーター。

パラメータとオプションはdocker runに似ています

コンテナの起動、停止、削除

  • コンテナを起動する

作成されたコンテナは、docker start コマンドを使用して起動できます。

 docker start container_name/container_id

docker restartコマンドはコンテナを再起動します

docker restart container_name/container_id
  • コンテナを停止する

コンテナを停止するには、docker stop コマンドを使用します。

 docker stop container_name/container_id
  • コンテナの削除

停止したコンテナを 1 つ以上削除するには、docker rm コマンドを使用します。

 docker rm container_name/container_id

コンテナを表示

現在実行中のコンテナを表示するには、docker ps コマンドを使用します。

 docker ps

停止したコンテナも含め、すべてのコンテナを表示する場合は、docker ps -a コマンドを使用します。

 docker ps -a

写真

コンテナに入る

基本的な構文:

 docker exec [OPTIONS] CONTAINER COMMAND [ARG...]
  • オプション: コマンドの実行方法を構成するために使用されるオプションのパラメータ。
  • CONTAINER: コマンドを実行するコンテナ名またはコンテナ ID を指定する必須パラメータ。
  • COMMAND: コンテナ内で実行されるコマンド。
  • ARG...: 複数のパラメータを含めることができるコマンドパラメータ。

一般的な docker exec パラメータとオプションを次に示します。

  • -i または --interactive: コマンドを対話モードで実行します。通常は、対話機能を有効にするために -t と共に使用されます。
  • -t または --tty: 疑似端末 (疑似 TTY) を割り当てます。通常は -i と一緒に使用されます。
  • --user: コマンドを実行するユーザーまたはユーザー ID を指定します。
  • --env: 環境変数を設定します。
  • --workdir: コマンドを実行するための作業ディレクトリを指定します。
  • --privileged: より高い権限を持つ特権モードでコマンドを実行します。

実行中のコンテナに入り、コマンドを実行するには、docker exec コマンドを使用できます。たとえば、xj_pandora という名前のコンテナに入り、Bash ターミナルを起動するには、次のようにします。

 docker exec -it cdf3be3e078a /bin/bash

写真

ファイルのコピー

docker cp コマンドを使用して、ファイルをコンテナにコピーしたり、コンテナからホストにコピーしたりします。

コンテナ内のファイルをホストにコピーします。

 docker cp cdf3be3e078a:/opt/app/requirements.txt .

写真

ホストからコンテナにファイルをコピーします。

 docker cp ./test.txt cdf3be3e078a:/opt/app/

写真

コンテナのエクスポートとインポート

docker export コマンドを使用してコンテナをファイルとしてエクスポートし、docker import コマンドを使用してそのファイルを新しいイメージとしてインポートできます。これは、コンテナのスナップショットを共有したり、コンテナを移行したりする場合に役立ちます。

 docker export -o xj_container.tar xj_container_name docker import xj_container.tar xj_new_image

コンテナログを表示する

docker logs コマンドは、Docker コンテナのログ出力を表示するために使用されます。コンテナ内で実行されているアプリケーションの標準出力 (stdout) と標準エラー出力 (stderr) を表示できます。以下は、docker logs コマンドの基本的な構文と詳細な説明です。

 docker logs [OPTIONS] CONTAINER
  • オプション: ログ出力方法を構成するために使用されるオプションのパラメーター。
  • CONTAINER: ログを表示するコンテナ名またはコンテナ ID を指定する必須パラメータ。

一般的な docker ログのパラメータとオプションを次に示します。

  • -f または --follow: tail -f コマンドと同様に、コンテナ ログの出力をリアルタイムで追跡します。
  • --since: 指定された時間以降に生成されたログのみを表示します。
  • --until: 指定された時間より前に生成されたログのみを表示します。
  • --timestamps: ログエントリのタイムスタンプを表示します。
  • --tail: ログの最後の数行のみを表示します。デフォルトはすべてのログです。
  • --details: コンテナの標準エラー出力など、より詳細なログ情報を表示します。

たとえば、コンテナ pandora-pandora-1 のログをリアルタイムで出力するには、次のようにします。

 docker logs -f pandora-pandora-1

写真

要約する

Docker コンテナ操作コマンドは、コンテナ化されたアプリケーションを開発および管理するための重要なツールです。これらのコマンドの構文と目的をより深く理解することで、コンテナをより適切に管理および監視し、アプリケーションがスムーズに実行されるようにすることができます。コンテナの作成、ログの表示、リソース使用状況の監視、コンテナへの入力など、これらのコマンドはコンテナ化された管理を強力にサポートします。この記事が、Docker コンテナの操作に役立つ情報とガイダンスを提供できたことを願っています。

<<:  Rust はクラウドネイティブ開発の「未来」でしょうか?

>>:  Kubernetes ベースの Jenkins 動的および静的ノード

推薦する

onevps: 3.6 ドル / 512m メモリ / 20g SSD / 1Gbps 無制限トラフィック / 日本国内 7 データセンター

onevps は Think Huge Ltd. の VPS サブブランドです。主に KVM 仮想化...

ウェブマスターになることについてお話ししましょう。

インターネットに触れるようになってから1年が経ちました。少し前、私は難しい決断を下し、いくつかの国営...

クラウドユーザーがデータベース開発を振り返る 2019年クラウドコンピューティングソフトウェアレビュー

クラウド コンピューティング市場は 2019 年も深く進化を続け、強いものはさらに強くなるでしょう。...

新しい同僚が Kafka を使い始めて震え上がる...

画像はBaotu.comよりRocketMQ、Kafka、Pulsar はすべて、現在業界で広く使用...

zxhost - 年間 17 ポンド / 460gDDoS 保護 / KVM / 1g メモリ / 120g ハードディスク / 6T トラフィック / OVH

安価で安定しており、ハード ドライブが大きく、トラフィックが多い VPS として、zxhost をお...

リサーチ・インスティテュート:クラウド市場の価値は2028年に8,520億ドルに達する

人工知能、モノのインターネット、機械学習、ビッグデータなどの先進技術の継続的な導入と、クラウドコンピ...

ネットワークマーケティングの3つの基本的な段階についての簡単な説明

インターネットの普及に伴い、オンラインマーケティングは多くの企業の新たなお気に入りとなり、伝統的なマ...

hosteons - 30% 割引コード/無制限トラフィック VPS/KVM 仮想化/Windows|Alipay

こちらは、hosteons の VPS の 30% 割引コードです (年間支払いの場合のみ)。また、...

ライブ配信で商品を販売する有名人の3つの罪

ライブストリーミング電子商取引が失敗することはますます容易になっています。 5月28日、ウェイ・ヤー...

シャンダゲームズ元社長リンハイ氏のスタートアップボイスコミュニティ「議論」が暴露される

「フォーカス」と「論壇」のインターフェースである凌海が今年2月に山大ゲームズの社長を退任すると発表し...

time4vps-3.99 ユーロ/1g メモリ/1T ハードディスク/4T トラフィック/ヨーロッパ データ センター

time4vpsはかなり昔に設立された会社だそうですが、もちろん聞いただけです。本日は、400M ポ...

9年間の経験の共有: SEO業界におけるいくつかの重要なボトルネック

昨日、あるグループの副社長と部長と、SEO 開発とボトルネックに関するいくつかの問題について話し合い...

言語学習サイトDuolingoの新しい収益方法:ユーザーはサイトを翻訳することで収益を得る

外国語学習とクラウドソーシング翻訳ウェブサイトの Duolingo は本日、シリーズ B 資金調達の...

VMware は最新のセキュリティをリードし、開発から本番まで最新のアプリケーションを保護します。

最新のアプリケーションには最新のセキュリティが必要です。 VMware (NYSE: VMW) は本...