TeamCity не подключается к базе данных при работе в режиме роя

Я пытаюсь запустить TeamCity в Docker Swarm, но он не может пройти аутентификацию с помощью внешнего экземпляра AWS RDS Postgres. Странным для меня является то, что эта проблема не возникает при работе с docker-compose. Я запускал это локально и на AWS EC2, чтобы еще раз убедиться, что это не связано с чем-то, что происходит с машиной. Оба раза я получаю одинаковые результаты.

Сообщение об ошибке:

Не удалось подключиться к серверу PostgreSQL. попытка подключения не удалась.: org.postgresql.util.PSQLException: попытка подключения не удалась. Вызвано: java.net.UnknownHostException: rds_url.com

докер-compose.yaml:

version: "3"

services:
  teamcity-server:
    privileged: true
    image: jetbrains/teamcity-server:2020.2.2
    hostname: teamcity-server
    ports:
      - "8111:8111"
      - "5432:5432"
    volumes:
      - ./data_dir:/data/teamcity_server/datadir
      - ./log_dir:/opt/teamcity/logs
    

  teamcity-agent:
    privileged: true
    image: jetbrains/teamcity-agent:2020.2.2
    environment:
      - SERVER_URL=http://teamcity-server:8111
      - AGENT_NAME=regular_agent
      - DOCKER_IN_DOCKER=start
    volumes:
      - "/var/run/docker.sock:/var/run/docker.sock"


  teamcity-minimal-agent:
    privileged: true
    image: jetbrains/teamcity-minimal-agent:2020.2.2
    environment:
      - SERVER_URL=http://teamcity-server:8111
      - AGENT_NAME=minimal_agent
      - DOCKER_IN_DOCKER=start
    volumes:
      - "/var/run/docker.sock:/var/run/docker.sock"

person Bill--    schedule 12.02.2021    source источник
comment
Это на этапе установки teamcity или попытка использовать существующую конфигурацию?   -  person Peter Brooks    schedule 16.02.2021
comment
Я пробовал и потерпел неудачу с обоими.   -  person Bill--    schedule 18.02.2021


Ответы (1)


Поговорив со службой поддержки TeamCity, я разобрался. Короче говоря, мне нужно было настроить DNS-сервер на DNS-сервер VPC. Я также установил сетевой режим на хост.

dns: 169.254.169.253
network_mode: host

Локально я так и не решил. Чтобы попасть на мой сервер rds, мне нужно подключиться к VPN, и рой докеров не смог разрешить IP-адрес при работающем vpn.

person Bill--    schedule 19.02.2021