Instalación de SQL Server Machine Learning Services (Python y R) en Docker
Se aplica a: SQL Server 2019 (15.x) - Linux
En este artículo se explica cómo instalar SQL Server Machine Learning Services en Docker. Puede usar Machine Learning Services para ejecutar scripts de Python y R en la base de datos. No se proporcionan contenedores precompilados con Machine Learning Services. Puede crear uno a partir de los contenedores de SQL Server mediante una plantilla de ejemplo disponible en GitHub.
Requisitos previos
Interfaz de la línea de comandos de Git.
Motor de Docker 1.8 o versiones posteriores en cualquier distribución de Linux admitida. Para más información, vea Get Docker (Obtención de Docker). SQL Server en contenedores no se admite en Windows o macOS para su uso en producción.
Vea también los requisitos del sistema para SQL Server en Linux.
Clonación del repositorio mssql-docker
El comando siguiente clona el repositorio git mssql-docker
en un directorio local.
Abra un terminal de Bash en Linux o Mac.
Cree un directorio para almacenar una copia local del repositorio mssql-docker.
Ejecute el comando git clone para clonar el repositorio mssql-docker:
git clone https://github.com/microsoft/mssql-docker mssql-docker
Compilación de una imagen de contenedor de Linux de SQL Server
Complete los pasos siguientes para compilar la imagen de Docker:
Cambie el directorio al directorio mssql-mlservices:
/mssql-docker/linux/preview/examples/mssql-mlservices
En el mismo directorio, ejecute el comando siguiente:
docker build -t mssql-server-mlservices .
Ejecute el comando:
Importante
La variable de entorno
SA_PASSWORD
está en desuso. En su lugar, useMSSQL_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-mlservices
Nota:
Cualquiera de los valores siguientes se puede usar para MSSQL_PID: Developer (gratis), Express (gratis), Enterprise (de pago), Estándar (de pago). Si usa una edición de pago, asegúrese de que ha adquirido una licencia. Reemplace
<password>
por la contraseña real. El montaje del volumen mediante-v
es opcional. Reemplace<directory on the host OS>
por un directorio real en el que quiera montar los archivos de registro y datos de la base de datos.Ejecute el comando siguiente para confirmarlo:
docker ps -a
Nota:
Para compilar la imagen de Docker, debe instalar paquetes de varios GB de tamaño. El script puede tardar algún tiempo en terminar de ejecutarse, en función del ancho de banda de red.
Ejecución de la imagen de contenedor de SQL Server para Linux
Establezca las variables de entorno antes de ejecutar el contenedor. Establezca la variable de entorno PATH_TO_MSSQL en un directorio host:
export MSSQL_PID='Developer' export ACCEPT_EULA='Y' export ACCEPT_EULA_ML='Y' export PATH_TO_MSSQL='/home/mssql/'
Nota:
El proceso para ejecutar ediciones de producción de SQL Server en contenedores es ligeramente diferente. Para obtener más información, consulte Configuración de imágenes de contenedor de SQL Server en Docker. Si usa los mismos nombres y puertos de contenedor, el resto de este tutorial funciona con los contenedores de producción.
Para ver los contenedores, ejecute el comando
docker ps
:sudo docker ps -a
Si la columna ESTADO muestra el estado Activo, SQL Server se está ejecutando en el contenedor y está escuchando en el puerto especificado en la columna PUERTOS. Si la columna ESTADO de su contenedor de SQL Server muestra Cerrado, consulte la sección Solución de problemas de la guía de configuración.
Salida:
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
Habilitar Machine Learning Services
Para habilitar Machine Learning Services, conéctese a la instancia de SQL Server y ejecute la siguiente instrucción de T-SQL:
EXECUTE sp_configure 'external scripts enabled', 1;
RECONFIGURE WITH OVERRIDE;
Contenido relacionado
- Tutorial de Python: Implementación de un modelo de regresión lineal con el aprendizaje automático de SQL
- Tutorial de Python: Clasificación de clientes por categorías mediante la agrupación en clústeres k-means con aprendizaje automático de SQL
- Inicio rápido: Ejecución de scripts sencillos de R con aprendizaje automático de SQL
- Tutorial de R: Predicción de tarifas de taxi de Nueva York con clasificación binaria