Skip to main content

2. Запуск MS SQL 2022 в Docker

1. Извлечение образа контейнера SQL Server 2022 (16.x) 

sudo docker pull mcr.microsoft.com/mssql/server:2022-latest
------------------------------------------------

2. Запуск контейнера 
Восклицательные знаки в пароле не пройдут, поэтому если вместо Linux123 нужен пароль Linux123!!!, то нужно экранировать символы таким образом Linux123\!\!\!

sudo docker run -e "ACCEPT_EULA=Y" -e "MSSQL_SA_PASSWORD=Linux123" \
   -p 1433:1433 --name sql1 --hostname sql1 \
   -d \
   mcr.microsoft.com/mssql/server:2022-latest
----------------------------------------------

3. Просмотр списка контейнеров 

sudo docker ps -a
----------------------------------------------

4. Запуск bash внутри контейнера

sudo docker exec -it sql1 "bash"
----------------------------------------------

5. Запуск интерпретатора SQL-T

/opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P "Linux123!!!"

Или сразу так, минуя пункт 4 (Может не сработать!)

sudo docker exec -it sql1 /opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P "Linux123"

///////////////////////////////////////////
ВНИМАНИЕ!!!
///////////////////////////////////////////
С некоторых пор mssql-tools заменён на mssql-tools18

Поэтому команда теперь выглядит так:
/opt/mssql-tools18/bin/sqlcmd -S localhost -U SA -P "Linux123" -C

-С в конце - это отключение проверки сертификата, так как драйвер ODBC Driver 18 требует шифрованное соединение по умолчанию.
Если не помогает -C, ставим в конце строки -N (Это отключение шифрования)

----------------------------------------------