Dockerを使用するためのDockerの一般的なコマンド

DockerとDockerの使用

Dockerアーキテクチャ

画像

  • Dockerデーモン(Dockerデーモン):Dockerデーモンは、ホスト(DOCKER-HOST)で実行されるバックグラウンドプロセスです。Dockerクライアントを介して通信できます。
  • クライアント(Dockerクライアント):DockerクライアントはDockerのユーザーインターフェイスであり、ユーザーコマンドと構成IDを受け入れ、Dockerデーモンと通信できます。この図では、dockerbuildなどはすべてDockerの関連コマンドです。
  • イメージ(Dockerイメージ):Dockerイメージは、Dockerコンテナーを作成するための手順を含む読み取り専用のテンプレートです。これは、システムインストールCDに少し似ています。システムは、システムインストールCDを使用してインストールできます。同様に、Dockerイメージを使用して、Dockerイメージ内のプログラムを実行できます。
  • コンテナ:コンテナは、イメージの実行可能なインスタンスです。イメージとコンテナの関係は、オブジェクト指向のクラスとオブジェクトの関係に少し似ています。Docker APIまたはCLIコマンドを使用して、コンテナーを開始、停止、移動、および削除できます。
  • レジストリ:Dockerレジストリは、イメージを一元的に保存および配布するサービスです。Dockerイメージがビルドされたら、現在のホストで実行できます。Docker Hubには多数の優れたイメージが保存されているため、Dockerコマンドを使用してダウンロードして使用できます。

Dockerで一般的に使用されるコマンド

基本コマンド

コマンド 効果
Dockerバージョン dockerのバージョン情報を表示できます
Docker情報 Dockerのシステム情報、画像とコンテナーの数を表示します
docker --help すべてのDockerコマンドを表示
dockerコマンド--help 現在のコマンドのヘルプ情報を表示する
DockerシステムDF Dockerの詳細を表示する
docker volumermデータボリュームフォルダー Dockerのデータボリュームフォルダーを削除します
Dockerボリュームプルーン 無駄なデータ量を削除する
Dockerボリュームls Dockerのボリュームを表示する
Dockerネットワークls Dockerのネットワークを表示する

ミラーコマンド

コマンド 効果 パラメータ 例と説明
docker run [パラメータ]イメージ名 ブートミラー -dバックグラウンドで実行します--rm使い切ったら削除します docker run -p 8080:8080 -d tomcat
Docker画像 すべてのローカルミラーを表示 -a-qIDのみを表示するすべてを表示 名前はMirrorand Dangling Mirrorです。ミラー情報のみが表示され、コンテナには含まれていません。
Docker検索画像名 ミラーリストを検索 --filterフィルタリングのためdockerHubに直接アクセスすることをお勧めします docker search mysql --filter = STARS = 5000STARSが5000を超えるフィルター画像
dockerpullイメージ名 リモートからミラーを取得します docker pulltomcatデフォルトlastestバージョン
dockerrmiの名前またはID 指定されたミラーを削除します -f $(docker images -aq)すべての画像を削除します docker rmitomcatはスペースごとに複数の画像を削除できます
docker imageprune ぶら下がっている鏡を削除する DockerプルまたはDockerビルドによってトリガーされる可能性があります
dockerタグイメージID新しいイメージ名:バージョン ミラーの情報を変更する

dockerrunの説明

パラメータの説明

  • --Nameコンテナに名前を割り当てます--nametomcat1
  • -dコンテナをバックグラウンドで実行します(デーモンモードで実行します)
  • -インタラクティブモードを使用してコンテナdockerrunに実行します-itcentos / bin / bash/bin/bashはbashを使用して対話します
  • -p 8080:8080は、ポートの左側がホストポートであり、右側がコンテナポートであることを指定します
  • -Pランダム指定ポート
  • -v ./webapps/ROOT/:/usr/tomcat/webapps/ROOT/データボリュームの左側にあるホストのマッピングパス右側のコンテナのマッピングパスはコロンで区切られています。存在しない場合は、自動的に作成されます
  • -e環境変数を構成します
  • 単語の使用を開始しない場合-dコンテナごとにコンテナを終了したいコンテナを終了CTRL+P+Qできませんコンテナの外部に終了します

docker run -v description
  • 取り付けはに分かれています 名前付きマウント匿名マウント

匿名マウント

  • docker run -v / etc / nginx / confこれは匿名マウントであり、コンテナ内のディレクトリのみが指定され、ホストディレクトリは指定されていません
    • この場合、dockerはコンテナのディレクトリをすぐに作成します

名前付きマウント

  • docker run -v conf:/ etc / nginx / confこれは、指定されたボリューム名とディレクトリを名前でコンテナにマウントします。
    • この場合、dockerは指定した名前に従ってディレクトリを生成します

これらの2つのマウント方法によって生成されたディレクトリは、dockerのコアディレクトリにあります

/var/lib/docker/volumes # docker存放数据卷的目录
# 进入目录 可以查看 所有的数据卷
root@yufire:/var/lib/docker/volumes# ls
33c1fdb0df03784e20d585bce84266e40a032ce3bb4d26b9f2467c521f3b2d21  ecc57ad17f08d760aab21286e28eb6da56bb8d483d1f43e3fc5d5293d0263824  redis.conf
5c061cd30891f00fb7e44e02f8309cb982083c04ce03050b32a8b11d4f4fa38c  metadata.db

指定されたディレクトリをマウントします

  • docker run -v / etc / nginx / conf:/ etc / nginx / conf-これは、指定されたディレクトリマウントコンテナとホストディレクトリ共有の自動同期です。

docker run --volumes-from ject

コンテナ間のデータ同期(共有)

docker run -d --name nginx01 nginx  # 运行主容器

docker run -d --name nginx02 --volumes-from nginx01  # 使用子容器继承父容器
# 两个容器之间的数据就可以胡互通了
  • 継承された親コンテナが閉じられている場合、データはまだそこにありますか?
  • 答えはまだあります。サブコンテナが実行されている場合、データが1つしかない場合でも、データが失われることはありません。
  • マウントされたコンテナ間でデータが同期され、データが相互に送信されます

結論として

  1. この方法は、クラスター間の構成共有として使用して、構成を簡素化できます。

Dockerのプル手順

すでに画像をダウンロードしている場合は、ローカルバージョンの単語docker pull少なくなります階層化

階層的手段:ローカルの既存の低バージョンと高バージョンを使用して同じ場所を共有し、ローカルを使用して他の異なる場所をダウンロードできます

  • 利点:ストレージスペースを大幅に節約

コンテナコマンド

コマンド 効果 パラメータ
dockerrmの名前またはID 指定したコンテナを削除します -f強制削除$(docker ps -aq)すべてのコンテナを削除 docker rmi tomcat docker rim -f tomcat
docker ps 実行中のコンテナを表示する -実行されていないコンテナを含むすべてのコンテナを表示します-qコンテナのIDのみを表示します
docker stats id コンテナが占有しているホストマシンのリソース状況を表示する
docker startid 停止したコンテナを開始します docker start 容器id
docker restartid 停止したコンテナを再起動します
docker stop id 実行中のコンテナを停止します docker stop 容器id
docker kill id コンテナを殺す docker kill container idは、コンテナーがエラーを報告した場合にこのコマンドを使用できます
docker exec -it name Orid / bin / bash 実行中の指定されたコンテナを入力します / bin / bashは、Ctrl + Dを操作する方法または終了する方法です
dockerattachコンテナID コンテナに入る2番目の方法 直接入力
Dockerコンテナのプルーン 停止したコンテナをすべて削除します
docker build -tname。 Dockerfileをビルドする -tは、ビルドされたイメージの名前を指定します。コンテキストを表します
docker cpホストディレクトリコンテナID:/ container path ホストからコンテナにファイルをコピーします docker cp / usr / local / tomcat 96f7f14e99ab:/ usr / local / tomcat
docker cpコンテナID:/コンテナパスホストパス コンテナからホストにファイルをコピーします docker cp 96f7f14e99ab:/ usr / local / tomcat / usr / local / tomcat
dockerログID コンテナ起動のログを表示する -tf --tail10は10ログを表示します dockerはtomcatまたはidをログに記録します
docker top id コンテナのプロセスを表示する Dockerトップ96f7f14e99ab
docker inspect id コンテナの詳細情報(メタデータ)を表示する
Docker履歴ID イメージがどのように構築されているかを確認します

dockerexecコマンドの説明

  • docker exec -it container id / bin / bashインタラクティブモードでコンテナーに入り、bashを使用して対話します

dockerコマンドリスト

おすすめ

転載: blog.csdn.net/weixin_43420255/article/details/106495104
おすすめ