почему при чтении из `/dev/random `за курсором помещается символ `1;2c `?

Существует docker inspect , который дает вам подробную информацию об одном контейнере.

Возможно, вас заинтересует значение State.StartedAt

 "State": {
            "Status": "running",
            "Running": true,
            "Paused": false,
            "Restarting": false,
            "OOMKilled": false,
            "Dead": false,
            "Pid": 1234,
            "ExitCode": 0,
            "Error": "",
            "StartedAt": "2018-12-20T12:41:54.281709415Z",
            "FinishedAt": "2018-12-20T12:41:28.781748517Z"
        },

Чтобы проверить все запущенные контейнеры, вы можете выполнить:

docker container ls --format="{{.Names}}" | xargs -n1 docker container inspect

Вывод JSON:Установив jq (apt-get install jq), вы можете фильтровать только имя контейнера и StartedAt с помощью

docker container ls --format="{{.Names}}" | xargs -n1 docker container inspect | jq '.[] | {name:.Name, uptime:.State.StartedAt}'

Вывод в формате CSV:(разделенные точкой с запятой, отсортированные по возрасту)

docker container ls --format="{{.Names}}" | xargs -n1 docker container inspect --format='{{.Name}};{{.State.StartedAt}}' | sort -k2,1

РЕДАКТИРОВАТЬ:

с помощью docker ps(Предполагается, что время создания = время начала. Что не работает, если вы останавливаете и запускаете контейнеры. docker ps дает только RunningForи Status, оба в удобочитаемом стиле «5 недель назад». Более надежно использовать метод docker inspectдля получения фактического времени выполнения.)

docker ps --format="{{.CreatedAt}} {{.Names}}" | sort -k1,1

РЕДАКТИРОВАТЬ2:

Оказывается, все это можно сделать с помощью go и docker api. Вот простая демонстрация, которую я только что закодировал:

Вы можете взять бинарную ссылку:Или измените код на свой вкус и скомпилируйте его самостоятельно ссылка

Результат будет выглядеть так:

container_age for API v1.37
DURATION ID         NAME
50h      1234567890 /jenkins
362h     1234567891 /elasticsearch

0
28.02.2021, 13:50
0 ответов

Теги

Похожие вопросы