參考文章
https://docs.microsoft.com/zh-cn/sql/linux/quickstart-install-connect-docker?view=sql-server-2017
從 Docker Hub 中拉出 SQL Server 2017 Linux 容器映像。
docker pull microsoft/mssql-server-linux:2017-latest
運行容器映像
docker run -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=<YourStrong!Passw0rd>' \ -p 1433:1433 --name sql1 \ -d microsoft/mssql-server-linux:2017-latest
連接到 SQL Server
下列步驟在容器內(nèi)部使用 SQL Server 命令行工具 sqlcmd 來連接 SQL Server。
-
使用 docker exec -it 命令在運行的容器內(nèi)部啟動交互式 Bash Shell。 在下面的示例中,sql1 是在創(chuàng)建容器時由 --name 參數(shù)指定的名稱。
docker exec -it sql1 "bash"
2 .一旦位于容器內(nèi)部,使用 sqlcmd 進行本地連接。 默認(rèn)情況下,sqlcmd 不在路徑之中,因此需要指定完整路徑。
/opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P '<YourNewStrong!Passw0rd>'
3. 如果成功,應(yīng)會顯示 sqlcmd 命令提示符:1> 。
掛載本地目錄“/root/mssql_data”到docker容器中"/opt/mssql_data"
[root@localhost ~]# docker run -d -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=sxjlinc_2012' -p 1433:1433 --name sql1 -v /root/mssql_data:/opt/mssql_data microsoft/mssql-server-linux:2017-latest
開啟mssql-server的代理服務(wù)
docker exec -it sql1 "bash" root@b9a09ce17c02:/# /opt/mssql/bin/mssql-conf set sqlagent.enabled true SQL Server needs to be restarted in order to apply this setting. Please run 'systemctl restart mssql-server.service'. root@b9a09ce17c02:/# exit [root@localhost ~]# docker stop sql1 [root@localhost ~]# docker start sql1
|