Не удается подключиться к базе данных SQL Server внутри докера в travis - PullRequest
0 голосов
/ 17 декабря 2018

У меня проблемы с подключением к базе данных SQL Server внутри док-контейнера в travis.

На моем компьютере все работает нормально, ошибка возникает только внутри travis, не могу понять, почему.

Dockerfile:

from microsoft/mssql-server-linux:2017-latest

ENV ACCEPT_EULA=Y

ENV MSSQL_SA_PASSWORD=Passw0rd

COPY hermes.bak /var/opt/mssql/backup/hermes.bak

CMD ["/opt/mssql/bin/sqlservr"]

.travis.yml:

dist: trusty

services:
  - docker

before_install:
  - docker build -t hermes-db .
  - docker run -d -p 127.0.0.1:1430:1433 --name hermes-db hermes-db
  - docker exec hermes-db /opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P 'Passw0rd' -Q "RESTORE DATABASE [lbc_refs] FROM DISK = N'/var/opt/mssql/backup/hermes.bak' WITH MOVE 'lbc_refs' TO '/var/opt/mssql/data/lbc_refs_data.mdf', MOVE 'lbc_refs_log' TO '/var/opt/mssql/data/lbc_refs_log.ldf'"

script:
  - docker ps | grep -q hermes-db

Окончание:

Sqlcmd: Error: Microsoft ODBC Driver 17 for SQL Server : Login timeout expired.
Sqlcmd: Error: Microsoft ODBC Driver 17 for SQL Server : TCP Provider: Error code 0x2AF9.
Sqlcmd: Error: Microsoft ODBC Driver 17 for SQL Server : A network-related or instance-specific error has occurred while establishing a connection to SQL Server. Server is not found or not accessible. Check if instance name is correct and if SQL Server is configured to allow remote connections. For more information see SQL Server Books Online..

Когда я запускаю netstat -tulpn:

Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN      -               
tcp        0      0 0.0.0.0:11211           0.0.0.0:*               LISTEN      -               
tcp        0      0 127.0.0.1:1430          0.0.0.0:*               LISTEN      -               
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      -               
tcp        0      0 127.0.0.1:5432          0.0.0.0:*               LISTEN      -               
tcp6       0      0 :::22                   :::*                    LISTEN      -               
udp        0      0 0.0.0.0:11211           0.0.0.0:*                           -               
udp        0      0 172.18.0.1:123          0.0.0.0:*                           -               
udp        0      0 172.17.0.5:123          0.0.0.0:*                           -               
udp        0      0 127.0.0.1:123           0.0.0.0:*                           -               
udp        0      0 0.0.0.0:123             0.0.0.0:*                           -               
udp6       0      0 :::123                  :::*                                -               
...