Partilhar via


Instalar o SQL Server Machine Learning Services (Python e R) no Docker

Aplica-se a: SQL Server 2019 (15.x) - Linux

Este artigo explica como instalar dos Serviços de Aprendizado de Máquina do SQL Server no Docker. Você pode usar os Serviços de Aprendizado de Máquina para executar scripts Python e R no banco de dados. Não fornecemos contêineres pré-construídos com Serviços de Machine Learning. Você pode criar um a partir dos contêineres do SQL Server usando um modelo de exemplo disponível no GitHub.

Pré-requisitos

  • Interface de linha de comando Git.

  • Docker Engine 1.8+ em qualquer distribuição Linux suportada. Para obter mais informações, consulte Obtenha Docker. O SQL Server em contêineres não é suportado no Windows ou macOS para uso em produção.

  • Consulte também os requisitos de sistema para o SQL Server no Linux.

Clone o repositório mssql-docker

O comando a seguir clona o repositório git mssql-docker para um diretório local.

  1. Abra um terminal Bash no Linux ou Mac.

  2. Crie um diretório para armazenar uma cópia local do repositório mssql-docker.

  3. Execute o comando git clone para clonar o repositório mssql-docker:

    git clone https://github.com/microsoft/mssql-docker mssql-docker
    

Criar uma imagem de contêiner do SQL Server Linux

Conclua as seguintes etapas para criar a imagem do docker:

  1. Altere o diretório para o diretório mssql-mlservices:

    /mssql-docker/linux/preview/examples/mssql-mlservices
    
  2. No mesmo diretório, execute o seguinte comando:

    docker build -t mssql-server-mlservices .
    
  3. Execute o comando:

    Importante

    A variável de ambiente SA_PASSWORD foi preterida. Use MSSQL_SA_PASSWORD em vez disso.

    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
    

    Observação

    Qualquer um dos seguintes valores pode ser usado para MSSQL_PID: Developer (gratuito), Express (gratuito), Enterprise (pago), Standard (pago). Se utilizar uma edição paga, certifique-se de que adquiriu uma licença. Substitua <password> pela sua senha real. A montagem de volume usando -v é opcional. Substitua <directory on the host OS> por um diretório real onde você deseja montar os dados do banco de dados e os arquivos de log.

  4. Confirme executando o seguinte comando:

    docker ps -a
    

    Observação

    Para criar a imagem do Docker, você deve instalar pacotes com vários GB de tamanho. O script pode levar algum tempo para concluir a execução, dependendo da largura de banda da rede.

Executar a imagem de contêiner do SQL Server Linux

  1. Defina as variáveis de ambiente antes de executar o contêiner. Defina a variável de ambiente PATH_TO_MSSQL para um diretório host:

    export MSSQL_PID='Developer'
    export ACCEPT_EULA='Y'
    export ACCEPT_EULA_ML='Y'
    export PATH_TO_MSSQL='/home/mssql/'
    

    Observação

    O processo para executar edições de produção do SQL Server em contêineres é ligeiramente diferente. Para obter mais informações, consulte Configurar imagens de contêiner do SQL Server no Docker. Se você usar os mesmos nomes de contêiner e portas, o restante deste passo a passo ainda funcionará com contêineres de produção.

  2. Para exibir seus contêineres, execute o comando docker ps:

    sudo docker ps -a
    
  3. Se a coluna STATUS mostrar um status de Up, o SQL Server está sendo executado no contêiner e escutando na porta especificada na coluna PORTS. Se a coluna STATUS do contêiner do SQL Server mostrar Encerrado, consulte a seção Solução de problemas de do guia de configuração.

    Saída:

    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 Serviços de Aprendizado de Máquina

Para habilitar os Serviços de Aprendizado de Máquina, conecte-se à sua instância do SQL Server e execute a seguinte instrução T-SQL:

EXECUTE sp_configure 'external scripts enabled', 1;
RECONFIGURE WITH OVERRIDE;