GNU/Linux >> Linux の 問題 >  >> Panels >> Docker

Linuxでの20の便利なDockerコマンドの例

Dockerコンテナーは、今日最も新しいテクノロジーの1つです。 Dockerコンテナーは、通常、CI / CD(継続的インテグレーション/継続的デプロイメント)プラットフォームで使用されます。コンテナは、(RAM、CPU、HDD、カーネル)などの基盤となるハイパーバイザーリソースを利用する軽量VM(仮想マシン)です。

Dockerコマンドは、コマンドラインからコンテナーとイメージを管理するために使用されます。この記事では、Linuxで役立つ20のdockerコマンドの例を取り上げます。 DockerがLinuxシステムにすでにインストールされており、通常のユーザーがdockerグループに追加されていると想定しています。

1)Dockerのバージョンを確認する

Dockerコンテナで作業する際の最初の重要なタスクは、Dockerのバージョンを確認することです。以下のdockerコマンドを実行して、バージョンを確認してください

 $ docker --versionDockerバージョン20.10.12、ビルドe91ed57 $ 

2)システム全体の情報を表示する

「dockerinfo」コマンドは、Dockerルートディレクトリ、OSバージョン、カーネルバージョン、Dockerバージョン、RAM、CPU、Dockerレジストリなどのシステム全体の情報を表示するために使用されます。

 $ docker info 

3)Dockerイメージを検索する

「dockersearch」コマンドを使用して、dockerhubレジストリからdockercontainerイメージを検索できます。最新のnginxdockerイメージを検索するとします。

 $ docker search nginx 

上記のコマンドの出力は次のようになります

4)Dockerコンテナイメージをダウンロードする

Docker pullコマンドは、Dockerハブレジストリからコンテナイメージをダウンロードするために使用されます。

構文:

$ docker pull

Docker pullコマンドは常に最新バージョンのイメージをダウンロードしようとしますが、特定のバージョンのイメージを指定することもできます。 rsyslogイメージの最新バージョンをダウンロードしたいとします

latestlatest:プルcomplete1ae07ab881bd:ライブラリ/ nginx5eb5b503b376から引っ張るプルcomplete78091884b7be:プルcomplete091c283c6a66:プルcomplete55de5851019b:プルcompleteb559bad762be:プルcompleteDigest:SHA256:2834dc507516af02784808c5f48b7cbe38b8ed5d0f4837f16e78d00deb7e7767Status:nginxのためのダウンロード新しいイメージ:latestdocker.io/ $ドッカプルnginxUsingデフォルトのタグを
 library / nginx:latest $ 

バージョンに基づいて特定のイメージをダウンロードすると、Ubuntu:20:04dockerイメージをダウンロードして実行するとします

 $ docker pull ubuntu:20.0420.04:pull from library / ubuntu08c01a0ec47e:Pull completeDigest:sha256:669e010b58baf5beb2836b253c1fd5768333f0d1dbcb834f7c07a4dc93f474beStatus:ubuntu:20.04の新しいイメージをダウンロードしました。 

5)ダウンロードしたDockerコンテナイメージを表示する

dockerのルートディレクトリは「/var/ lib / docker」であることがわかっているため、docker pullコマンドを使用して画像をダウンロードすると、すべての画像がdockerのルートディレクトリに保存されます。

ダウンロードしたすべてのDockerコンテナイメージを表示するには、

を実行します。
 $ docker image lsor $ docker images 

出力

6)Dockerコンテナを実行します

コンテナは「dockerrun」コマンドで起動されます。nginxイメージからコンテナを実行したいとします。

 $ docker run -it -p 9000:80 --name =myapp nginx 

出力

上記は「myapp」という名前のコンテナを実行し、Dockerホストの9000ポートにリクエストが届いた場合、そのリクエストが80ポートのmyappコンテナにリダイレクトされるようにpatルールを設定します。コマンドを実行した直後にコンソールが直接表示されることに気付いたかもしれません。 exitと入力してコンテナを停止/シャットダウンし、コンテナを停止せずにコンテナから出たい場合は、「ctrl + p+q」と入力します

これで、curlコマンドを使用してポート9000でnginxアプリにアクセスできます

 $ curl http:// :9000 / 

7)コンテナをデタッチモードで実行する

「dockerrun」コマンドで-dオプションを使用して、デタッチモードでコンテナを実行できます。ここでデタッチモードとは、dockerrunコマンドの実行後にコマンドプロンプトが表示されることを意味します。例を以下に示します

 $ docker run -it -d -p 9080:80 --name =myapp2 httpdf7dc2ece64708a9de5e53f341b0c7d17a​​c9189fb7c99079ad8744348bc5a6faa $ 

8)実行中のすべてのコンテナを表示

「dockerps」コマンドを実行して、実行中のすべてのコンテナを表示します

 $ docker ps 

終了または停止したコンテナとともに実行中のすべてを表示するには、実行します

 $ docker ps -a 

9)コンテナコンソールへのアクセス

コンテナコンソールにアクセスするには、「dockerexec」コマンドの下で実行します

 [メール保護]:〜$ docker exec -it myapp / bin / bash [メール保護]:/#

コンソールから出るには、exitコマンドを入力します

10)コンテナの開始、停止、再起動、および強制終了

仮想マシンと同じように、Dockerコンテナを起動、停止、再起動できます。

以下のコマンドを使用して、実行中のコンテナを停止します

 $ docker stop myapp2myapp2 $ 

コンテナ名の代わりにコンテナIDを使用することもできます

以下のコマンドを使用して、コンテナを起動します。

 $ docker start myapp2myapp2 $ 

以下のコマンドを使用して、コンテナを再起動します。

 $ docker restart myapp2myapp2 $ 

プロセスと同じように、コンテナを強制終了することもできます。以下のコマンドを使用して、コンテナを強制終了します。

 [メール保護]:〜$ docker kill myapp2myapp2 [メール保護]:〜$ 

11)コンテナを削除する

Docker Containerは、「dockerrm」コマンドを使用して削除または削除されます。 「dockerrm」は、dockerが停止/シャットダウンされている場合にのみ機能します。

構文:

$ docker rm {container_name_OR_container_id}

 $ docker stop test-apptest-app $ docker rm test-apptest-app $ 

実行中のコンテナを強制的に削除するには、dockerrmコマンドで「-f」オプションを使用します。以下に例を示します

 $ docker rm -f nginx-app 

12)Dockerコンテナイメージを削除する

コンテナと同様に、Dockerイメージを削除または削除することもできます。 「dockerrmi」コマンドは、Dockerコンテナイメージを削除するために使用されます。

Dockerイメージ「Ubuntu:20.04」を削除して実行するとします

 $ docker rmi ubuntu:20.04Untagged:ubuntu:20.04Untagged:[email protected]:669e010b58baf5beb2836b253c14f7c07a4dc93f474beDeleted:sha256:54c9d81cbb440897908abdcaa98674db831e40a66f704fDelete 

上記のコマンドでは、画像名の代わりに画像IDを使用できます

 $ docker rmi 54c9d81cbb44 

13)Dockerコンテナイメージの保存と読み込み

Dockerイメージをtarファイルに保存するには、「dockersave」コマンドを使用します。例を以下に示します。

 $ docker save nginx -o mynginx.tar $ ls -l mynginx.tar-rw ------- 1 sysops sysops1459317762月5日10:30mynginx.tar$ 

tarファイルからDockerイメージを読み込むには、「dockerload」コマンドを使用します

 $ docker load -i mynginx.tarLoaded image:nginx:latest $ 

注:これらのコマンドは、DockerイメージをあるDockerホストから別のDockerホストに転送する場合に役立ちます。

14)ファイル/フォルダをコンテナにコピーします

「dockercp」コマンドを使用して、Dockerホストからコンテナにファイルまたはフォルダをコピーできます。以下では、「mycode」フォルダをmyappコンテナにコピーしています

 $ docker cp mycode myapp:/ tmp 

15)Dockerイメージの履歴の表示

ここでのDockerイメージの履歴とは、Dockerイメージの構築中に実行されているコマンドを意味します。これらのコマンドは、「Docker履歴」を使用して表示できます

構文:#

$ docker history {Image_Name_OR_Image_id}

 $ docker history nginx 

16)コンテナからのログの表示

ログインせずにコンテナのログを表示できます。「dockerlogs」コマンドを実行してください

構文:

$dockerログ{container_name_or_container_id}

$dockerログmyapp

ライブログを表示するには、dockerlogsコマンドの「-f」オプションを使用します

 $ docker logs -f myapp 

コンテナからの最後の10個のログを表示するには、

を実行します
 $ docker logs --tail 10 myapp 

17)コンテナのリソース使用統計を表示する

すべてのコンテナのCPU、メモリ、ネットワークI / Oの使用状況を表示するには、「dockerstats」コマンドを実行します

 $ docker stats 

上記のコマンドは、すべてのコンテナのリソース使用統計のライブストリーミングを表示します。

特定のコンテナーの統計を表示するには、dockerstatsを実行してからコンテナーを実行します

 $ docker stats myapp 

ライブストリーミングなしのリソース使用統計

 $ docker stats --no-stream 

dockertop」を使用してコンテナの実行中のプロセスを表示できます ‘コマンド。

構文:#

Dockerトップ{Container_Name_OR_ID}

 $ docker top myapp 

18)コンテナのIPアドレスを表示する

コンテナの低レベルの情報は、「dockerinspect」コマンドを使用して表示されます。 「dockerinspect」コマンドからコンテナのIPアドレスを取得できます

構文:

$ docker inspect -f‘{{range.NetworkSettings.Networks}}{{。IPAddress}}{{end}}’

 $ docker inspect-f'{{range.NetworkSettings.Networks}}{{。IPAddress}}{{end}}'myapp172.17.0.2 $ 

19)Dockerコンテナイメージをビルドする

Dockerコンテナイメージは「dockerbuild」コマンドを使用してビルドされますが、docker buildコマンドを最初に作成するには、Dockerfileを作成する必要があります。 Dockerfileがmycodeフォルダーの下に作成され、次のコマンドを実行してDockerイメージを構築するとします。

 $ cd mycode $ docker build -t mynginx:v2。

また読む Dockerfileを使用してDockerイメージを構築する方法(ステップバイステップ)

20)タグをDockerイメージに設定

「dockertag」コマンドは、タグを画像に設定するために使用されます。

構文:

$ docker tag source_image {:tag} target_image {:tag}

ソース画像「mariadb:latest」のタグを「mariadb:10.03」に設定したいとします

 $ docker tag mariadb:latest mariadb:10.03 $ docker images | grep -i mariadbmariadb 10.0345a5a43e143a3日前410MBmariadb最新45a5a43e143a3日前410MB$

プライベートレジストリに画像をアップロードする場合は、プロジェクトと画像の後にレジストリURLが続くように画像にタグを付けます。

 $ docker tag mariadb:latest myregistry:5000 / db / mariadb:10.03 

次に、「docker login」コマンドを使用してプライベートレジストリにログインし、dockerpushコマンドを実行してアップロードします。

 $ docker push myregistry:5000 / db / mariadb:10.03 

これでこの記事は終わりです。これらの例が参考になることを願っています。以下のコメントセクションで、お気軽に質問やコメントを共有してください。

また読むDockerでMacVLANネットワークを作成して使用する方法


Docker
  1. 7 Linux df コマンドの例

  2. 8 Linux TR コマンドの例

  3. Linux での rm コマンドの例

  1. Linuxでの12の便利なWgetコマンドの例

  2. Linux での ps コマンドの例

  3. w Linux でのコマンド例

  1. Linuxでのlsコマンド:17の便利な例の説明

  2. Dockerpsコマンドの便利な例

  3. Linux での sa コマンドの例