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 動的および静的ノード

推薦する

SEOVIP が降格され、Baidu はそれが偶発的な傷害だと言った。草の根に対する偶発的な傷害だと言ったのは誰ですか?

SEOVIP は、今では誰もが知っている SEO 業界の有名なウェブサイトです。その理由は、このウェ...

Qihoo 360 は国内検索エンジン市場における Baidu の優位性に挑戦できるか?

昨年、大いに盛り上がった第3四半期の戦争は、人々に国内検索エンジンに対する新たな認識を与えました。Q...

ベリー - 年間 10 ドル / 128 メモリ / 10g ハード ドライブ / 300g データ / G ポート / フェニックス

berry.pw、このドメイン名は特に信頼性が低いと感じますか?少なくとも私はそう思います。しかし、...

アプリストア ASO の基本ガイド: ASO 最適化の 3 つのステップ

ASO は、Android または iOS アプリに無料の高品質ユーザーを提供し、あらゆるモバイル成...

クラウド コンピューティングはあなたのビジネス モデルに適していますか?

クラウド コンピューティングは、インターネット プロトコルに基づいて IT サービスを追加、使用、配...

データは分散されており、コンピューティングもそれに追いつく必要があります。

[[221573]] 1. 背景懸命な努力の末、Zhang Dapang と Bill は分散ファイ...

小社超:90年代以降の世代が作ったサッカーソーシャルプラットフォーム:O2Oクローズドループを完成させ、収益を生み出した

【小ソーシャルネットワーク】の設立当初、最初に発表するプロジェクトは北京大学と清華大学発の出会い系ア...

Fastdomainの簡単な紹介

Fastdomain は 2005 年に設立され、ドメイン名と仮想ホスティング サービスを提供してい...

テンプレートウェブサイトは本当に役に立たないのでしょうか?

著者は、多くの顧客がコスト効率が高く、完璧に設計された Web サイトを好むことに気付き、一般的にテ...

柔軟なクラウドコンピューティング: ポータブルアーキテクチャの多面的な利点

フォームの下部アジャイル開発の観点から、ほとんどのシナリオでは、アプリケーションを構築するときに、迅...

friendhosting: 春のプロモーション、8 つのデータセンターの無制限 VPS が 45% オフ、半年あたり 7.7 ユーロから

friendhosting (2009 年設立) からの最新のプロモーション メールには、公式が春節...

Shanpo.comの創設者が起業家としてのストーリーを語る: 投資を獲得した経緯

仕事を辞めてShanpo.comを立ち上げてからちょうど半年が経ちました。何度も挫折しましたが、つい...

3月にドメイン名販売業者から提供されたプロモーション オファーの一覧

長い間、ドメイン名には注目していませんでした。一般的なドメイン名販売業者のプロモーション情報をお送り...

BilibiliとXiguaの間で浮上するのは誰か?

1. 背景西瓜動画は2017年10月に中編動画のコンセプトを提案したが、中編動画業界のベテランである...

グリーンラディッシュアルゴリズムからウェブサイト運営を一歩リードする方法

一歩先を行くことは、常にプロジェクトを行う際の核心的な考え方であり、インターネット上でウェブサイトを...