2017-01-29 1 views
1

Проблема. Я пытаюсь создать TeamCity инфраструктуры (сервер и агент) на Ubuntu Linux 16.04.1 LTS с использованием Docker. Я запустил Docker контейнер с jetbrains/teamcity-server изображение как описано на this page. Можно получить доступ к серверуTeamcity через веб-браузер, используя IP-адрес сервера и порт 8111.Какой URL-адрес сервера должен предоставлять агент TeamCity в Docker?

Теперь я пытаюсь запустить Docker контейнер с агентом, как описано на this page. Это написано: Обратите внимание, что «localhost» обычно не работает, поскольку это будет ссылаться на «localhost» внутри контейнера. Ну, когда я поставлю «http://localhost:8111» или «http://127.0.0.1:8111» или «http://my_server_ip:8111» в выполняемый скрипт для контейнера агента, я, наконец, получаю 1) «WARN - buildServer.AGENT.registration - Регистрация ошибок на сервере по URL http://localhost:8111 () sic! always localhost). Продолжает повторять попытки подключения. »или 2)« WARN - buildServer.AGENT.registration - Ошибка при запросе сервера для протоколов связи по URL-адресу http://localhost:8111/app/agents/protocols ».

Также я попытался показать IP-адрес контейнера Docker, на котором запущен сервер, и предоставить его для запускающего сценария агента. Но результат был тот же.

Вопрос. Какой URL-адрес сервера я должен предоставить? Существуют ли какие-либо неявные шаги в конфигурации TeamCity с Докер, который я пропустил?

ответ

3

Вы можете использовать параметр --link связать контейнеры:

  1. Начните свой jetbrains/teamcity-server и использовать --name teamcity-server дать ему описательное имя
  2. Запускать контейнер агента и использовать --link teamcity-server для того, чтобы подключение к teamcity-server контейнера
  3. Внутри контейнера агента вы можете использовать teamcity-server в качестве имени хоста для подключения к контейнеру teamcity-server.

Пожалуйста, также проверьте Docker container networking, который заменил функцию --link.

+1

В вашем «teamcity-agent» теперь вы можете ссылаться на связанный контейнер «teamcity-server» (в моем случае, я назвал teamcity) +, используя внутренний порт ** 8111 **. Подобно этому 'SERVER_URL = http: // teamcity: 8111' – Jaider

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