ホスト上で実行されているコンテナの情報を取得する方法について簡単に説明します。これは、xen の「xm list –long [domain_ID]」コマンドに似ています。
Docker コンテナの外部から情報を取得する
1. 以下は、ホスト ノードに存在するイメージのリストです。
# docker images REPOSITORY TAG IMAGE ID CREATED SIZE fedora latest 422dc563ca32 2 days ago 252MB ubuntu latest dd6f76d9cc90 13 days ago 122MB hello-world latest 725dcfab7d63 13 days ago 1.84kB centos latest d123f4e55e12 13 days ago 197MB
2. docker イメージの 1 つを起動します。
# docker run -it -d 422dc563ca32 /bin/bash 52249ba75f0fa33f93202f4a2d7f83bc71600b8b75ea4db0bc5b56022bf254b6
3. 新しい Docker コンテナが実行されていることを確認します。
# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 52249ba75f0f 422dc563ca32 "/bin/bash" About a minute ago Up About a minute gracious_keller
「調べる 「」コマンドは、コンテナの完全な情報を一覧表示します。最初の列にリストされているコンテナ ID を inspect オプションとともに使用します。ここではかなり長い出力が得られます。
# docker inspect 52249ba75f0f
[
{
"Id": "52249ba75f0fa33f93202f4a2d7f83bc71600b8b75ea4db0bc5b56022bf254b6",
"Created": "2017-11-17T14:38:05.340313315Z",
"Path": "/bin/bash",
"Args": [],
"State": {
"Status": "running",
"Running": true,
"Paused": false,
"Restarting": false,
"OOMKilled": false,
"Dead": false,
"Pid": 1535,
"ExitCode": 0,
"Error": "",
"StartedAt": "2017-11-17T14:38:05.638951265Z",
"FinishedAt": "0001-01-01T00:00:00Z"
}
....... 4. これは、検証が必要なものに基づいて切り詰めることもできます。たとえば、Docker コンテナのネットワーク部分に関する情報しか取得できませんでした。
# docker inspect --format='{{ .NetworkSettings.IPAddress }}' 52249ba75f0f
172.17.0.2 # docker inspect --format='{{ .NetworkSettings.Gateway }}' 52249ba75f0f
172.17.0.1 Docker コンテナ内から情報を取得する
以下の例は、Docker コンテナー内からの設定を表示するためのものです。
1. まず、docker コンテナーにアタッチします。
# docker attach 52249ba75f0f
2. 真新しいコンテナにアタッチすると、ifconfig、route などのコマンドが機能しません。 docker は最小限のインストールであり、必要に応じてパッケージをインストールする必要があります。そのため、ifconfig と route コマンドを実行するには、まず net-tools をインストールします。 パッケージ。
# yum install net-tools
3. コマンド ifconfig と route を実行して、Docker コンテナに関する必要な情報を取得します。
# ifconfig -a
eth0: flags=4163[UP,BROADCAST,RUNNING,MULTICAST] mtu 1500
inet 172.17.0.2 netmask 255.255.0.0 broadcast 0.0.0.0
ether 02:42:ac:11:00:02 txqueuelen 0 (Ethernet)
RX packets 36502 bytes 72894961 (69.5 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 22286 bytes 1594850 (1.5 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73[UP,LOOPBACK,RUNNING] mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
loop txqueuelen 1 (Local Loopback)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 # route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 0.0.0.0 172.17.0.1 0.0.0.0 UG 0 0 0 eth0 172.17.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0
コンテナ構成ファイル
また、コンテナーに関する情報は構成ファイルとして保存され、コンテナーを再開するために使用できます。コンテナーのパスの場所は、前の「検査」コマンドから収集できます。