#docker #docker-compose #continuous-integration #gitlab #gitlab-ci-runner
#docker #docker-compose #непрерывная интеграция #gitlab #gitlab-ci-runner
Вопрос:
Я использую docker-compose для запуска интеграционных тестов. Интеграционные тесты используют хост (или IP) контейнера веб-сервиса (работающего в docker-compose) для тестирования приложения. Следовательно, необходимо найти хост, на котором запущен контейнер (при запуске docker-compose в gitlab ci). При локальном запуске я использую «localhost», при запуске обычного docker в gitlab ci я использую «docker», но они не работают при запуске docker compose. У меня есть несколько мыслей, не могли бы вы посоветовать, что предпочтительнее, или предоставить другие варианты: 1 — назначение сети в docker-compose, чтобы приложение получало статический IP, и я подключался к нему 2 — используйте docker inspect для динамического поиска IP запущенной службы 3 — найдите статический хост (например, «docker-compose») и используйте это.
Пожалуйста, посоветуйте, Коннор
Ответ №1:
Я бы предложил назначить сеть в вашем файле docker-compose и иметь статический IP-адрес для всех ваших служб.