TeamCity - docker-compose - Не удается сопоставить URL-адрес

Я настроил следующий файл docker-compose для запуска локального кластера teamcity:

version: '3.1'

services:
    teamcity:
        image: jetbrains/teamcity-server:2017.1.2
        volumes:
            - teamcity-server-datadir:/data/teamcity_server/datadir
            - teamcity-server-logs:/opt/teamcity/logs
        ports:
            - 8111:8111
    teamcity-agent:
        image: jetbrains/teamcity-agent:2017.1.2
        environment:
            SERVER_URL: http://teamcity:8111
        volumes:
            - /var/run/docker.sock:/var/run/docker.sock
        depends_on:
            - teamcity
volumes:
    teamcity-server-datadir:
    teamcity-server-logs:

Если я создаю докер, контейнеры запускаются нормально, но не подключаются к teamcity из браузера. Когда я смотрю журналы, я нахожу:

teamcity-agent_1  | [2019-04-02 07:56:24,623]   WARN - buildServer.AGENT.registration - Failed to obtain server supported protocols via URL http://teamcity:8111/app/agents/protocols: TeamCity Server is starting. Will try later.
teamcity-agent_1  | [2019-04-02 07:56:24,623]   WARN - buildServer.AGENT.registration - Error registering on the server via URL http://teamcity:8111. Will continue repeating connection attempts. Details: server is in a maintenance mode

Я проверил несколько сообщений SO, но, похоже, ничего не решает, URL-адрес отображается правильно. Я также добавил depend_on в агент, но это все равно не помогло бы, если у сервера возникли проблемы с получением URL-адреса.

Есть идеи?

Я запускал именно то, что вы запускали, и это работает для меня. Я вижу предупреждения, но, тем не менее, это работает. Вы также можете попробовать сначала запустить "teamcity" и дать ему несколько минут, а затем запустить остальные.

Mihai 02.04.2019 10:34

Спасибо @Mihai, ваш комментарий о том, что он работает, заставил меня понять, что не так, он был доступен через localhost: 8111, но не на город команды:8111, я только что видел вывод журнала, и он ввел меня в заблуждение, я думал, что запись DNS добавлена ​​​​по умолчанию, я добавил ее вручную в etc/hosts. Весело, как каждый раз, когда я что-то спрашиваю в SO, это всегда что-то подобное;)

qubits 02.04.2019 14:57
Развертывание модели машинного обучения с помощью Flask - Angular в Kubernetes
Развертывание модели машинного обучения с помощью Flask - Angular в Kubernetes
Kubernetes - это портативная, расширяемая платформа с открытым исходным кодом для управления контейнерными рабочими нагрузками и сервисами, которая...
Как создать PHP Image с нуля
Как создать PHP Image с нуля
Сегодня мы создадим PHP Image from Scratch для того, чтобы легко развернуть базовые PHP-приложения. Пожалуйста, имейте в виду, что это разработка для...
2
2
487
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Похоже, ваш агент teamcity запускается перед сервером. Вот мой docker-compose, у меня работает:

version: "3"

services:
  teamcity-server:
    container_name: teamcity-server
    image: jetbrains/teamcity-server:2018.2.2
    volumes:
      - ./teamcity-server/data:/data/teamcity_server/datadir
      - ./teamcity-server/logs:/opt/teamcity/logs
    ports:
      - 8111:8111

  teamcity-agent01:
    container_name: teamcity-agent01
    image: jetbrains/teamcity-agent:2018.2.2
    environment:
      - SERVER_URL=http://teamcity-server:8111
      - AGENT_NAME=teamcity-agent01
    deploy:
      resources:
        limits:
          cpus: '1.0'
          memory: 512M
        reservations:
          cpus: '0.5'
          memory: 256M

Другие вопросы по теме