Docker をすぐに使い始めるのに役立つ 30 個のコマンドライン

Docker をすぐに使い始めるのに役立つ 30 個のコマンドライン

コンテナとクラウドは現在最も人気のあるテクノロジーであり、IT 担当者なら誰でも習得すべきスキルです。まだ Docker を学習していない場合は、この記事が役に立ちます。この記事では、一般的なチュートリアルにある理論的な説明の多くを脇に置いて、直接実践的な操作から始めます。この記事に記載されているコマンドを学習すれば、Docker の基本的なスキルを習得したことになります。これを基にさらに深い知識を学ぶことができます。

1. コンテナ管理

コンテナは、リソース制約 (cgroups)、セキュリティ制約 (Unix 権限、機能、SELinux、AppArmor、seccomp など)、および名前空間 (PID、ネットワーク、マウントなど) によって厳密に制限される Linux のアプリケーションです。 Docker は最も一般的なコンテナ テクノロジーです。 Docker は、Docker デーモン (リスナー)、Docker イメージ (レイヤー)、Docker ストレージ (ボリューム)、および Docker ネットワークで構成されます。コンテナは、Docker イメージに基づいて Docker ランタイムによって作成される Docker インスタンスです。

コンテナを作成する

コンテナを作成するには、create コマンドを使用し、[image name] を実行するイメージの名前に置き換えます。

  1. docker create [イメージ名]

Enter キーを押すと、Docker はデフォルトでローカル イメージ ライブラリを検索します。そうでない場合は、Docker Hub でイメージを検索し、ローカル システムにダウンロードして、停止したコンテナーを作成します。

たとえば、golang コンテナを作成します。

コンテナの作成と実行

コンテナを作成して実行するには、run コマンドを使用し、[イメージ名] を実行するイメージの名前に置き換えます。このコマンドは、指定されたイメージをローカルおよび Docker Hub で検索し、ローカルにダウンロードし、コンテナを作成して起動します。

  1. docker run [イメージ名]

停止したコンテナを起動する

停止されているコンテナを起動するには、start コマンドを実行します。開始コマンドは、[コンテナ名] またはコンテナ ID に置き換えることができます。 docker ps -a を使用すると、ローカル コンテナ (停止されたコンテナを含む) のリストを表示できます。

  1. docker start [コンテナ名/ID]

コンテナを停止する

実行中のコンテナを停止するには、stop コマンドを使用します。コンテナを停止した後、start コマンドで起動できます。

  1. docker stop [コンテナ名/ID]

コンテナの再起動

コンテナを再起動するには、restart コマンドを使用します。このコマンドは実行中のコンテナを停止し、再起動することができます。

  1. docker restart [コンテナ名/ID]

コンテナを一時停止する

実行中のコンテナ内のプロセスを一時的に停止する必要がある場合は、pause コマンドを使用できます。

  1. docker pause [コンテナ名/ID]

一時停止したコンテナの再開

コンテナを一時停止した後、unpause コマンドを使用して一時停止したコンテナを再開できます。

  1. docker unpause [コンテナ名/ID]

実行中のコンテナを一覧表示する

システム上で実行中のコンテナのリストを表示する必要がある場合は、次のコマンドを実行します。

  1. docker psまたは
  2. docker コンテナ ls

上記のコマンドは、現在実行中のコンテナのみを一覧表示します。ローカルマシン上のすべてのコンテナを一覧表示する場合は、次のコマンドを使用できます。

  1. ドッカーps -a
  2. コンテナID イメージ コマンド 作成ステータス ポート名
  3. fc6da76218aa golang "bash" 2分前 kind_shirley 作成

コンテナの削除

コンテナを削除するには、rm コマンドを使用します。コンテナを削除するには、コンテナが停止していることを確認してください。そうでない場合はエラーが報告されます。

  1. docker rm [コンテナ名/ID]

コンテナのアンインストール

システムからコンテナを削除するには、次のコマンドを実行します。 [containername] を、削除するコンテナの名前または ID に置き換えます。

  1. docker rm [コンテナ名/ID]

コンテナオペレーション

コンテナに対して操作を実行する場合、exec コマンドと attachment コマンドの 2 つの方法があります。

exec コマンドは、実行中のコンテナ内でコマンドを実行するために使用されます。例:

  1. docker exec -it [コンテナ名/ID] /bin/bash

疑似端末が開き、端末内でコマンドを実行できるようになります。

実行中のコンテナに接続するには、attach コマンドを使用します。

  1. docker attach --sig-proxy = false [コンテナ名/ID]

コンテナにアタッチした後、Ctrl+C を押して終了できます。ただし、終了するとコンテナも停止します。終了時にコンテナが実行されないようにするには、--sig-proxy=false パラメータを使用できます。この方法では、Ctrl+C[D]を押した後もコンテナは実行を継続します。

コンテナログを表示する

現在のコンテナの実行ステータスを表示するには、コンテナ ログを表示する必要があります。コンテナに取り付けて直接表示することができます。もちろん、より一般的な方法は、logs コマンドを使用することです。

  1. docker logs [コンテナ名/ID]

ログにはいくつかのパラメータが付随する場合があります:

  • -f: tail -f のようにコンテナのログをリアルタイムで出力します。
  • --since date: 指定された日付以降のログを印刷することを意味します。
  • --tail N number: 最後のN個のログを出力します。tail -n を想像してください。

コンテナの構成を表示する

コンテナのすべての構成情報は、実際には JSON ファイルです。コンテナのすべての情報を表示するには、inspect コマンドを使用できます。

  1. docker examine [コンテナ名/ID]

2. 画像管理

コンテナ イメージは、Docker コンテナのオペレーティング システム、アプリケーション、および初期状態が含まれるファイルです。 Dockerfile からビルドすることも、すでに実行中のコンテナから作成することもできます。

Docker では、イメージは次の内容を含む標準の Tar パッケージです。

  • Rootfs: オペレーティング システムの標準ルート (/) のようなコンテナー上のディレクトリ。たとえば、/usr、/var、/home などのディレクトリ。
  • JSON ファイル: rootfs の実行方法を指定するために使用されます。たとえば、コンテナの起動時に rootfs で実行されるコマンドまたはエントリポイント。コンテナに設定されている環境変数。コンテナの作業ディレクトリ。その他の設定。

rootfs に基づいて、上記の json は相互依存する可能性があるため、docker イメージはレイヤーに分割されます。

Dockerfileでイメージを構築する

Dockerfile は、Docker がコンテナ イメージを作成およびビルドするために使用するコマンドのリストです。次のコマンドを実行すると、Dockerfile からイメージを構築できます。

  1. docker build -f [dockerfile パス]

コンテナからイメージを構築する

実行中のコンテナからイメージをビルドすることも可能です。これは、コンテナのスナップショットをバックアップする簡単な方法でもあります。

  1. docker commit [コンテナ名] [イメージ名]

Docker Hubからイメージを取得する

次のコマンドを使用して、Docker Hub からローカル システムにイメージをダウンロードできます。

  1. docker image pull [イメージ名]

イメージをDocker Hubにプッシュする

コンテナ イメージを Docker Hub にプッシュする前に、Docker Hub にアカウントを作成し、ターミナルで docker login コマンドを実行してログインする必要があります。

  1. dockerログイン

次に、必要に応じてユーザー名とパスワードを入力します。認証が成功したら、次のコマンドを使用してイメージを Docker Hub にプッシュできます。

  1. docker image push [イメージ名]

コンテナイメージの一覧表示

システム上のイメージの一覧を表示する必要がある場合は、次のコマンドを実行します。

  1. dockerイメージls

または直接使用する

  1. Dockerイメージ

システムからイメージを削除する

システムからイメージを削除する場合は、remove コマンドを使用します。

  1. docker image remove [イメージ名]

ボリューム管理

デフォルトの Docker ボリュームは、docker run または docker create コマンドを通じてコン​​テナーに接続できるため、イメージの再構築プロセス中に作成されたデータは変更されません。

Dockerボリュームの作成

Docker ボリュームを作成するには、ボリュームの create コマンドを使用します。

  1. docker volume create [ボリューム名]

Dockerボリュームの削除

rm コマンドを実行して Docker ボリュームを削除します。ボリュームを削除すると、そのボリュームに保存されているすべてのデータが削除されることに注意してください。

  1. docker volume rm [ボリューム名]

ボリューム情報を表示

場合によっては、作成されたボリュームに関するさまざまな詳細を表示する必要があります。ボリュームに対してinspectコマンドを使用できます。

  1. docker volume examine [ボリューム名]

すべてのDockerボリュームを一覧表示する

システム上のすべてのボリュームのリストを表示する必要がある場合は、ボリュームに対して ls コマンドを使用できます。

  1. docker ボリューム ls

4. ネットワーク管理

Docker ネットワークは、コンテナが相互に接続し、インターネットに接続する方法を決定します。データのセキュリティを確保するために、さまざまなソフトウェア アプリケーション スタック専用のネットワークを作成できます。

Dockerネットワークを作成する

docker network create コマンドは、コンテナを相互に接続し、ホストのネットワークとインターネット接続を共有するブリッジ ネットワークを現在のシステム上に作成します。

  1. docker network create [ネットワーク名]

コンテナをネットワークに接続する

コンテナを新しいネットワークに接続するには、connect コマンドを使用します。

  1. docker network connect [ネットワーク名] [コンテナ名]

コンテナをネットワークから切断する

コンテナをネットワークから切断するには、disconnect コマンドを使用します。

  1. docker network disconnect [ネットワーク名] [コンテナ名]

ネットワーク情報を表示する

ネットワークの詳細情報を確認する必要がある場合は、ネットワーク上でinspectコマンドを使用できます。

  1. docker network inspect [ネットワーク名]

すべてのネットワークを一覧表示する

ネットワーク上で ls コマンドを使用すると、システム上のすべての docker ネットワーク情報を一覧表示できます。

  1. docker ネットワーク ls

ネットワークの削除

システムからネットワークを削除します。 、ネットワーク上で rm コマンドを使用できます。

  1. docker network rm [ネットワーク名]

V. 結論

この記事では、一般的な docker コマンドをリストします。これらのコマンドを上手に使用できるということは、すでに docker テクノロジを使い始めていることを意味します。その後、コンテナ オーケストレーション K8S クラスターなど、さらに詳しく学習できます。

<<:  基本的なソフトウェアとハ​​ードウェアの互換性の観点からデスクトップクラウドの応用について議論する

>>:  クラウドが AI へと移行する中、業界の主流メーカーはどのようにしてエコシステムをさらに進化させることができるでしょうか?

推薦する

Baiduキーワードランキングの浮動原理の簡単な分析

ランキングをチェックするのはSEO担当者の日常業務ですが、毎日チェックしていると、ランキングが変動し...

ウェブサイト上のオリジナル記事がBaiduにインデックスされない理由についてのいくつかの推測

最近、多くのウェブマスターがイライラし、落ち込んでいます。一生懸命更新した記事をサイトに公開した後、...

ブロガーが互いの記事を再投稿することが可能かどうか検討する

最近自分のブログを始めたのですが、週末は何もすることがありません。私はグループで遊んでいたのですが、...

職場のSEO専門家は、学習能力、学習意欲、学習能力が優れている必要があります。

ウェブサイトの最適化がこれほど普及した今、当然ながら現在の業界に参入する新人が増えています。最近会社...

100万人の開発者にサービスを提供し、Tencent Cloudネイティブ製品API呼び出しは1日あたり100億回を超える

テンセントクラウドの劉宇紅副社長は7月31日、2020年クラウドネイティブテクノロジーカンファレンス...

RaidLogic.NET $24/年 128Mメモリ(ロサンゼルス)推奨

RaidLogic.NET は 2001 年から確立されたビジネスなので、逃げ出す心配はありません。...

ローカルフォーラムで投稿署名を使用して、高いコンバージョン率のトラフィックを引き付ける方法

ウェブマスターなら誰でもフォーラム署名をよく知っています。これはウェブサイトが外部リンクを作成する方...

SaaS の最適化: ネットワーク管理者が知っておくべきこと

SaaS と IaaS は、ソフトウェアがクラウドに存在し、ユーザーがいつでもどこからでもソフトウェ...

zgovpsはどうですか?ロサンゼルスグローバルVPSシリーズVPS実テストデータ共有!

昨日、zgovps はロサンゼルス データ センターを拠点とする純粋に国際的な VPS シリーズ「ロ...

タオバオキーワード最適化

タオバオキーワード最適化スキル今日は、Taobao のキーワード最適化テクニックをいくつか分析します...

百度の25回目のアルゴリズムアップグレードが医療業界に与える影響とその意味

6月28日の事件以来、百度はユーザーエクスペリエンスとネットワーク環境の向上、そしてユーザーへのより...

半年以上Web業界に携わってきて、色々な思いが溢れています!

昨年ウェブサイトを立ち上げてから半年が経ちました。現在、両方のウェブサイトが安定して稼働しています。...

アップル、中国へのソースコード提出に反応

海外メディアの報道によると、アップルは製品のソースコードとキーを中国市場に提出し、監視用の「バックド...