2015-12-26 3 views
5

Список статусов Докера - here. Однако, когда я перечисляю контейнеры докеров с использованием API, статусы отображаются в «естественных» предложениях; например .:Все статусы контейнера Docker?

  • Exited (0) NN seconds ago
  • Up NN days
  • и так далее ...

Я не мог найти окончательный список всех строковых выходов для всех состояний. Другими словами, я хочу проанализировать строки статуса API докеров.

Каковы все возможные выходы API Docker для статуса контейнера?

Вот api Я говорю о.

ответ

2

Логика, с помощью которой сводка состояния создается, можно найти в Docker source code, in the file container/states.go, l. 41ff.. В принципе, вы получите одно из следующих действий:

  • Up 1 день (пауза)
  • Перезапуск (123) 1 день назад
  • Up 1 день
  • Снятие Незавершенное
  • Dead
  • Создано
  • возбужденном (123) 1 день назад
  • (пустая строка)

Для того, чтобы получить машиночитаемый выход, я предлагаю использовать /containers/:id/json endpoint, которая возвращает структуру данных, как следующее:

"State": { 
    "Dead": false, 
    "Error": "", 
    "ExitCode": 0, 
    "FinishedAt": "0001-01-01T00:00:00Z", 
    "OOMKilled": false, 
    "Paused": false, 
    "Pid": 2593, 
    "Restarting": false, 
    "Running": true, 
    "StartedAt": "2015-12-26T19:22:38.616937722Z", 
    "Status": "running" 
} 
+1

То, что я хочу знать, каковы действительные значения '' Status "' в этом выходе JSON. Я только когда-либо видел «работает», но что еще может быть? – Aaron

0

Я не использовал удаленный API, но я уверен, что вы действительно хотите сделать, это получить идентификатор всех контейнеров, а затем получить информацию о State для каждого контейнера с помощью /containers/(id)/json:

... 
    "State": { 
     "Error": "", 
     "ExitCode": 9, 
     "FinishedAt": "2015-01-06T15:47:32.080254511Z", 
     "OOMKilled": false, 
     "Paused": false, 
     "Pid": 0, 
     "Restarting": false, 
     "Running": true, 
     "StartedAt": "2015-01-06T15:47:32.072697474Z", 
     "Status": "running" 
    }, 
... 

Таким образом, вы получаете те же данные в гораздо более стандартной форме.

Смежные вопросы