Как вывести консоль docker при выполнении тестов dgoss - PullRequest
0 голосов
/ 24 января 2020

У меня есть контейнер docker, на котором запущено приложение python flask / uwsgi. Я тестирую контейнер docker с помощью dgoss, просто проверяя, что запрос к localhost возвращает 200 OK.

dgoss run <my-container-name> 

Конечно, все в порядке, когда тест проходит. Но когда этого не происходит, я просто получаю, например,

HTTP: http://localhost:80: status:
Expected
    <int>: 502
to equal
    <int>: 200

Это может произойти, если, например, приложение импортирует пакет, который я забыл включить в файл require.txt. Чтобы отладить его, я должен запустить контейнер docker вручную, а затем из вывода консоли ясно, что это за ошибка. Например:

 docker run -p 80:80 <my-container-name>
 ....
 ....
 Traceback (most recent call last):
   File "./main.py", line 11, in <module>
     import pandas as pd
 ModuleNotFoundError: No module named 'pandas'
 unable to load app 0 (mountpoint='') (callable not found or import error)
 *** no app loaded. GAME OVER ***
 2020-01-24 08:13:08,940 INFO exited: uwsgi (exit status 22; not expected)
 ...
 ...

Мой вопрос: Есть ли способ заставить dgoss печатать независимо от того, какой контейнер docker печатает на его консоли? Это действительно помогло бы в отладке, когда тесты терпят неудачу, если бы я мог видеть выходные данные flask / uwsgi.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...