적용 대상: Linux의 SQL Server 2019(15.x)
이 문서에서는 Docker에 SQL Server Machine Learning Services를 설치하는 방법을 설명합니다. Machine Learning Services를 사용하여 데이터베이스에서 R 또는 Python 스크립트를 실행할 수 있습니다. Machine Learning Services를 사용하여 미리 빌드된 컨테이너는 제공하지 않습니다. GitHub에서 제공되는 예제 템플릿을 사용하여 SQL Server 컨테이너에서 새로 만들 수 있습니다.
Prerequisites
Git 명령줄 인터페이스.
지원되는 모든 Linux 배포판에서 Docker Engine 1.8 이상 실행 자세한 내용은 Get Docker(Docker 가져오기)를 참조하세요. SQL Server 컨테이너는 Windows나 macOS에서 운영 환경에서 지원되지 않습니다.
SQL Server on Linux의 시스템 요구 사항도 참조하세요.
mssql-docker 리포지토리 복제
다음 명령어는 Git 저장소를 mssql-docker 로컬 디렉터리에 복제합니다.
리눅스나 macOS에서 Bash 터미널을 열어보세요.
로컬
mssql-docker저장소를 만들고 싶은 디렉터리로 변경하세요.Git 클론 명령을 실행해 저장소를 복제하세요
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 .메모
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-mlservices메모
지원되는 값은
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/'메모
컨테이너에서 프로덕션 SQL Server 버전을 실행하는 프로세스는 약간 다릅니다. 자세한 내용은 SQL Server Linux 컨테이너 배포 및 연결을 참조하세요. 동일한 컨테이너 이름 및 포트를 사용하는 경우 이 연습의 나머지 부분은 프로덕션 컨테이너에서도 계속 작동합니다.
컨테이너를 보려면
docker ps명령을 실행합니다.sudo docker ps -aSTATUS 열이 Up의 상태를 표시하는 경우, SQL Server는 컨테이너에서 실행되며 PORTS 열의 지정된 포트에서 수신 대기합니다. SQL Server 컨테이너의 STATUS 열에 종료됨이 표시되면 SQL Server Docker 컨테이너 문제 해결을 참조하세요.
Output:
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
Machine Learning Services 사용 설정
Machine Learning 서비스를 활성화하려면 SQL Server 인스턴스에 연결하고 다음 Transact-SQL 문장을 실행하세요:
EXECUTE sp_configure 'external scripts enabled', 1;
RECONFIGURE WITH OVERRIDE;