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 へと移行する中、業界の主流メーカーはどのようにしてエコシステムをさらに進化させることができるでしょうか?

推薦する

専用:$35/e3-1270/8g メモリ/1T ハードディスク/10T トラフィック/1Gbps/7 オプションのコンピュータルーム

専用、おそらく一部の人々はそれを知らないでしょうが、実際には以前は usdedicated と呼ばれ...

開発者の70%が損失を被る:55元を投資して得られるのはわずか1元

モバイル開発者の熱意はさらに高まっているのか、それとも現実に打ちのめされているのか。iMedia の...

遠方からのお客様、ぜひご宿泊ください。ウェブサイトのユーザー増加システムは真剣に受け止めなければなりません。

今回はMADCINカンファレンスに出席するために再び厦門に戻り、有名な旅行ウェブサイトを通じてホテル...

Linux 仮想ネットワーク カード テクノロジー: Macvlan

1. Macvlan の紹介Macvlan が登場する前は、イーサネット カードには複数の IP ア...

ターゲットキーワードをより早く見つけるための4つの簡単な方法

最適化に取り組み始めたばかりの人の多くは、SEO に取り組み始めた頃の私と同じように、サイトの最適化...

Androidプラットフォームの問題が爆発し、開発者の関心が薄れる

Android プラットフォームに対する外部開発者の関心は薄れている (写真提供: Tencent ...

アリババクラウドの年間収益は400億ドルを超え、最新の評価額は770億ドル

5月22日夜、アリババグループは2020年度の業績を発表した。アリババクラウドの年間収益は400億元...

インタビューでCopyOnWriteに答える3つのレベル、最後のレベルに答えられるのは1%の人

今日は、非常にハードコアな技術的知識についてお話ししましょう。 CopyOnWrite のアイデアと...

Baidu Academic Search がリリースされました! xueshuセカンダリドメイン名を有効にする

eName.cnは6月13日、Baidu Academic Searchがセカンドレベルドメイン名x...

「党創建100周年を祝い、情報技術革新局を開設」 |長沙で情報技術応用イノベーションフォーラムが開催

7月14日、情報技術応用イノベーションフォーラムが長沙で開幕した。湖南省の陳飛副省長が出席し、演説を...

ウェブサイトの最適化を成功させるための良い習慣

良い習慣があれば、何をするにしてもスムーズに完了できるようになります。昔から、「良い習慣があなたの人...

ウェブサイトのキーワードの選択: 広くて具体的なキーワードと、狭くて一般的なキーワード

適切なウェブサイト キーワードを選択することは、ウェブマスターの願いとなっています。現在、多くのウェ...

webhostingbuzz - ウェブホスティング + リセラーが 60% オフ

webhostingbuzzはバレンタインデーのホストプロモーション情報をリリースし、仮想ホストと再...

型破りなSEOでウェブサイトのトラフィックが急増

後で知ったのですが、今夜はとても力強い共有セッションを聞いて、とても価値があったと感じました。これは...