Połączenie z bazą danych w kontenerze

0

Cześć,

zastanawiam się nad skonteneryzowaniem mojej aplikacji. Do tego potrzebuję bazy danych z kontenerze. Zrobiłem więc tak:

docker run -e "ACCEPT_EULA=Y" -e "MSSQL_SA_PASSWORD=mystrongpassworD8_" `
>>    -p 8001:1433 --name sql --hostname sql`
>>    -d `
>>    053f55f283bc22ba0fe71fb28ce6a8bd4d77380e2fb985f8b8845bb7c4bf9a3d

Użyłem obrazu 2019-CU16-GDR1-ubuntu-16.04 i powstał kontener.

Gdy do niego wchodzę, wewnątrz wszystko działa. Mogę tworzyć tabele itp. Niestety gdy chcę podłączyć się do bazy spoza kontenera:

sqlcmd -S localhost,8001 -U "SA" -P "mystrongpassworD8_"

Dostaję błąd:

Sqlcmd: Error: Microsoft ODBC Driver 17 for SQL Server : Login timeout expired.
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..

Robię wszystko zgodnie z dokumentacją microsoftu: https://learn.microsoft.com/en-us/sql/linux/quickstart-install-connect-docker?view=sql-server-ver16&pivots=cs1-powershell

Czy wiecie dla czego nie mogę się połączyć?

0

A gdzie to wpisujesz? w terminalu? Co to jest za polecenie sqlcmd? Masz tam też komunikat : Check if instance name is correct and if SQL Server is configured to allow remote connections - może to kwestia prawidłowego ustawienia. Próbowałeś w przeglądarce odpalić localhost na tym porcie 8001?

1

To druga rzecz, ten port 8001 jest na pewno wolny i nie blokwany przez jakiś firewall czy inny antywirus? Może spróbuj może użyć innego portu na hoście np. 1443 bo pewnie 1433 masz już zajęty.

0

Prawdopodobnie było coś nie tak z portami.
Po restarcie komputera i usunięciu reszty kontenerów wykonałem znowu polecenia z góry i wszystko działa.
Mogę pisać zapytania i dostaję odpowiedzi.
Aha i wpisanie tego localhosta:8001 w przeglądarkę wywala komunikat "Przerwane połączenie" ale i tak nikt się tak z bazą danych nie komunikuje.

1 użytkowników online, w tym zalogowanych: 0, gości: 1