Связаться по Skype: vkarabedyants
Позвонить Написать
+7 (499) 404-28-83

Блог о системном администрировании серверов и сайтов

Установка, настройка программного обеспечения Linux, Windows операционных систем

Как быстро проверить образ docker

В этом уроке мы рассмотрим очень простой способ для создания и проверки образов docker. Тесты мы напишем для проверки официального nginx образа докер, используя Goss.

По результату выполнения данной статьи вы будете иметь небольшой yaml файл, который описывает желаемое состояние Вашего докер образа. С помощью него мы сможем тестировать образ:

с помощью команды

Тесты будут выполняться около половины секунды, и вывод следующий:

Чтобы провести тестирование, описанное в статье Вам необходимо иметь установленный docker

Установим инструмент тестирования

Мы будем использовать Goss как инструмент для тестирования. Установка проста и занимает всего несколько секунд.

Примечание: если у вас не установлен curl , вы можете установить goss вручную.

Что такое Goos

Goss-это альтернативный инструмент serverspec для проверки конфигурации сервера на основе yaml. Он облегчает процесс написания тестов, позволяя пользователю создавать тесты для текущего состояния системы. Тесты могут быть запущены на выполнение.

Напишем тест

dgoss это вспомогательный инструмент, который поставляется с Goss, для облегчения написания тестов и настройки. Допустим, мы запускаем наш докер образ следующим образом:

Чтобы начать писать наши тесты мы заменяем docker run на dgoss edit:

Эта  команда запустит докер образ, и откроет нам интерактивную оболочку с установленным goss в контейнере, вы увидите примерно такой результат:

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

Примечание: «a» — тоже самое что и «add»

После того, как мы выполним exit контейнер будет удален, и вы теперь видите goss.yaml в вашем текущем каталоге, который содержит следующее:

Тест можно запустить следующей командой

Изменение наших тестов вручную

Yaml файл, который мы создали в предыдущем разделе может быть написан от руки. Команда dgoss edit предназначена в качестве помощника для облегчения процесса написания тестов. Однако, в большинстве случаев, созданный в yaml, должен быть изменен. Давайте сделать это..

В разделе файлы проверяем, что файлы журналов находятся связанными символическими ссылками с stdout/stderr. Так давайте уберем mode, size, owner, group и contains. Наш раздел файлы должны выглядеть следующим образом:

В разделе http, давайте уберем протокол https связанный с флагами и добавим проверку, “добро пожаловать в nginx!” появляющееся сообщение в теле ответа:

Наш yaml файл, сейчас содержит 28 строк:

Процедура запуска теста не меняется

В данной статье мы познакомились с написание простого тестового сценария. Подробную информацию и расширенный функционал использования ищите в документации:

  • Goss — инструмент, который мы использовали в статье.
  • dgoss — утилита,входящая в состав goss.
  • dgoss-examples — репозиторий, примеров применения dgoss для проверки докер образов.

Нужна помощь в установке, настройке и сопровождении docker, обращайтесь [email protected]

Оставить комментарий

Лимит времени истёк. Пожалуйста, перезагрузите CAPTCHA.