Что "Докер проверяет -f ." делать?
Я попробовал следующее:
$ docker inspect -f . ubuntu:latest
.
$ docker inspect -f . hello-world
.
Я прочитал, что проверка возвращает основную информацию о контейнере или изображении. Но когда я выполняю вышеуказанную команду с точкой, она возвращает мне точку. Что это значит?
2 ответа
Я предполагаю, что это должно было быть:
$ docker inspect -f '{{ . }}' ubuntu:latest
который будет производить форматированный вывод объекта, например:
{sha256:2fa927b5cdd31cdec0027ff4f45ef4343795c7a2d19a9af4f32425132a222330 [ubuntu:latest] [] 2016-05-27T14:15:02.359284074Z b8bd6a8e8874a87f626871ce370f4775bdf598865637082da2949ee0f4786432 0xc4201f8280 1.9.1 0xc4201f8500 amd64 linux 121989688 121989688 {aufs map[]} {layers [sha256:9436069b92a3ec23351313d6decc5fba2ce1cd52aac77dd8da3b03b3dfcb5382 sha256:19429b698a2283bfaece7f590e438662e2078351a9ad077c6d1f7fb12f8cd08d sha256:82b57dbc5385a2a0edd94dfc86f9e4d75487cce30250fec94147abab0397f2b8 sha256:737f40e80b7ff641f24b759d64f7ec489be0ef4e0c16a9780b795dbe972b38d2 sha256:5f70bf18a086007016e948b04aed3b82103a36bea41755b6cddfaf10ace3c6ef] }}
Когда вы определяете формат без скобок, это больше не переменная для печати, а буквальный символ .
на выходе, который все, что вы видели. Обратите внимание, что читаемый пользователем вывод может быть получен, не форматируя вывод вообще, например:
$ docker inspect ubuntu:latest
И если вы хотите конкретное поле из этого вывода, то форматирование для извлечения этого конкретного поля полезно, например:
$ docker inspect -f '{{ .Created }}' ubuntu:latest
2016-05-27T14:15:02.359284074Z
Я не уверен, что вы думаете, что должна делать точка, но вы используете опцию 'format' с форматом .
предоставлена. Это рассматривается как буквальная строка.
если вы предоставите любой другой формат, например format xx
Вы бы получили эту строку.
Для сравнения:
Докер проверяет redis:2.6 -f xx
хх