Команда форматирования и вывод журнала

Docker использует Go шаблоны, который вы можете использовать для управления форматом вывода определённых команд и драйверов журнала.

Docker предоставляет множество основных функций для управления элементами шаблона. Во всех данных примерах используется команда docker inspect, но многие другие команды CLI имеют флаг --format, и многие справочники по командам CLI включают примеры настройки выходного формата.

Примечание

При использовании флага --format вам необходимо следить за средой вашей оболочки. В оболочке Posix вы можете запустить следующее с одинарной кавычкой:

$ docker inspect --format '{{join .Args " , "}}'

В противном случае в оболочке Windows (например, PowerShell) вам нужно использовать одинарные кавычки, но избегать двойных кавычек внутри параметров следующим образом:

$ docker inspect --format '{{join .Args \" , \"}}'

join

join объединяет список строк для создания одной строки. Он помещает разделитель между каждым элементом в списке.

$ docker inspect --format '{{join .Args " , "}}' container

table

table указывает, какие поля вы хотите видеть в выводе.

$ docker image list --format "table {{.ID}}\t{{.Repository}}\t{{.Tag}}\t{{.Size}}"

json

json кодирует элемент как строку json.

$ docker inspect --format '{{json .Mounts}}' container

lower

lower преобразует строку в её представление в нижнем регистре.

$ docker inspect --format "{{lower .Name}}" container

split

split разбивает строку на список строк, разделенных разделителем.

$ docker inspect --format '{{split .Image ":"}}'

title

title делает первый символ строки заглавным.

$ docker inspect --format "{{title .Name}}" container

upper

upper преобразует строку в её представление в верхнем регистре.

$ docker inspect --format "{{upper .Name}}" container

println

println печатает каждое значение в новой строке.

$ docker inspect --format='{{range .NetworkSettings.Networks}}{{println .IPAddress}}{{end}}' container

Совет

Чтобы узнать, какие данные можно распечатывает, покажите весь контент в формате json:

$ docker container ls --format='{{json .}}'