适用于: Linux 上的 SQL Server 2019 (15.x)
本文介绍如何在 Docker 上安装 SQL Server 机器学习服务。 可使用机器学习服务在数据库中执行 Python 和 R 脚本。 我们不向机器学习服务提供预建容器。 你可以使用 GitHub 上的可用示例模板在 SQL Server 容器中创建一个。
先决条件
Git 命令行接口。
任何受支持的 Linux 发行版上的 Docker 引擎 1.8 及更高版本。 有关详细信息,请参阅 “获取 Docker”。 SQL Server 容器在 Windows 或 macOS 上不支持生产环境使用。
克隆 mssql-docker 存储库
以下命令将 Git 仓库克隆 mssql-docker 到本地目录。
在Linux或macOS上打开Bash终端。
更改到你想创建本地
mssql-docker仓库的目录。运行 Git clone 命令来克隆仓库
mssql-docker:git clone https://github.com/microsoft/mssql-docker mssql-docker
构建并运行一个 SQL Server Linux 容器镜像
完成以下步骤以构建并运行 Docker 镜像:
将目录更改为 mssql-mlservices 目录:
cd mssql-docker/linux/preview/examples/mssql-mlservices在同一目录中,运行以下命令:
docker build -t mssql-server-mlservices .Note
要构建 Docker 镜像,你必须安装几 GB 的包。 此脚本可能需要一段时间才能完成运行,具体视网络带宽而定。
运行容器:
Important
SA_PASSWORD环境变量已弃用。 改用MSSQL_SA_PASSWORD。docker run -d -e MSSQL_PID=Developer -e ACCEPT_EULA=Y -e ACCEPT_EULA_ML=Y -e MSSQL_SA_PASSWORD=<password> -v <directory on the host OS>:/var/opt/mssql -p 1433:1433 mssql-server-mlservicesNote
任何 受支持的值 都可用于
MSSQL_PID。 如果使用付费版本,请确保已购买许可证。 将<password>替换为您的实际密码。 使用-v的卷装载是可选的。 将<directory on the host OS>替换为您希望用来装载数据库数据和日志文件的实际目录。
验证 SQL Server Linux 容器
docker ps -a
运行 SQL Server Linux 容器映像
先设置环境变量,再运行容器。 将 PATH_TO_MSSQL 环境变量设置为主机目录:
export MSSQL_PID='Developer' export ACCEPT_EULA='Y' export ACCEPT_EULA_ML='Y' export PATH_TO_MSSQL='/home/mssql/'Note
在容器中运行 SQL Server 生产版本的过程略有不同。 有关详细信息,请参阅部署并连接到 SQL Server Linux 容器。 如果使用相同的容器名称和端口,本教程的其余部分仍适用于生产容器。
若要查看容器,请运行
docker ps命令:sudo docker ps -a如果状态列显示正常运行状态,表明 SQL Server 正在容器中运行,且正在侦听端口列中指定的端口。 如果 SQL Server 容器的 STATUS 列显示 “已退出”,请参阅 SQL Server Docker 容器疑难解答。
输出:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 941e1bdf8e1d mcr.microsoft.com/mssql/server/mssql-server-linux "/bin/sh -c /opt/m..." About an hour ago Up About an hour 0.0.0.0:1401->1433/tcp sql1
启用机器学习服务
要启用机器学习服务,连接您的SQL Server实例并运行以下 Transact-SQL 语句:
EXECUTE sp_configure 'external scripts enabled', 1;
RECONFIGURE WITH OVERRIDE;