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

推薦する

bytedynasty: ウェブサイト構築 VPS、香港 CN2、15% 割引、21 元/月、KVM/512M メモリ/15gSSD/512G トラフィック

bytedynastyは最近設立された中国系企業です。現在は香港VPS事業を中心に運営しており、将来...

仮想化ソリューションとソフトウェアを選択するにはどうすればよいでしょうか?

皆さん、こんにちは。今日は、仮想化を実装するためのソリューションとソフトウェア、そして自分に合った仮...

質疑応答モードを通じてユーザーエクスペリエンスを向上させる利点について簡単に説明します。

ユーザー エクスペリエンスとは? Web サイトのユーザー エクスペリエンスは、特に 2013 年で...

SEO 人生の浄土はあなたの考え方次第

SEO はどれほど神話的でしょうか? 分かりません。神話的という言葉は気軽に使えるものではありません...

百度はウェブサイトの品質評価の推奨事項をリンク構築のガイドとして利用することを計画している

ウェブマスターネットワーク(www.admin5.com)は4月19日に次のように報じた。国内で有名...

JavaフレームワークRedis分散キャッシュ

[[269630]] https://dzone.com/articles/java-distrib...

Spring Cloud Bus の紹介

[[399945]] Spring エコシステムで RocketMQ を試すシリーズの記事: Spr...

変曲点?オラクルはより多くの顧客を獲得する必要があるかもしれない

オラクルの第4四半期決算報告によると、同社の業績は前年同期比でわずかに遅れをとったものの、非GAAP...

サイト上の記事更新により、多数の高品質のオリジナル記事を体験することができます

アルゴリズムの継続的な更新により、外部リンクが王様だった時代は終わりました。ウェブサイトの最適化の焦...

記録: サーバー変更が検索エンジンに与える影響

9月に、登録番号のランダムチェックを通知するメールを受け取りました。ウェブサイトの登録情報は私のもの...

nexusbytes: 月額 3.25 ドル、KVM シリーズ大容量ハードディスク VPS、512m メモリ/2 コア/500g ハードディスク/5T トラフィック

アメリカの企業である Nexusbytes は、今年から事業を開始したと主張していますが、実際にはそ...

ザックはSEOの混乱した未来への明確な道筋を指摘する

SEO 業界で働く人なら誰でも Zac という名前を知っているでしょう。彼は素晴らしい人物でもありま...

バイトダンスとテンセントの公然かつ秘密の戦い

つい最近、西瓜動画は今日頭条プラットフォームに「テンセントの著作権侵害の申し立てに基づき、広州裁判所...

ウェブサイトのランキングが一夜にして下がった理由の実践的な分析

今日は、弊社のSEO最適化研修に参加した学生のSEO事例分析を見てみましょう。彼のウェブサイトの状況...

Huarui Cloud: 香港 CN2 GIA (双方向) クラウド サーバー、月額 15 元から、年間支払いで 15% オフ、複数の構成をお得に

華瑞クラウド(huaruidc.com)は現在、香港クラウドサーバー事業を推進しており、デフォルトで...