MS SQL 이미지 다운로드
docker pull mcr.microsoft.com/mssql/server:2022-latest
Container 이미지 실행
docker run -e "ACCEPT_EULA=Y" -e "MSSQL_SA_PASSWORD=<SA Passw0rd>" -p 1401:1433 --name MSSQL2022 --hostname MSSQL2022 -d mcr.microsoft.com/mssql/server:2022-latest
매개변수
매개 변수Description
-e "ACCEPT_EULA=Y" | 최종 사용자 사용권 계약 수락을 확인하기 위해 ACCEPT_EULA 변수를 어떤 값에 설정합니다. SQL Server 이미지에 대한 설정을 해야 합니다. |
-e "SA_PASSWORD=<YourStrong!Passw0rd>" | 8자 이상이고 SQL Server 암호 요구 사항을 충족하는 자신만의 강력한 암호를 지정합니다. SQL Server 이미지에 대한 설정을 해야 합니다. |
-p 1401:1433 | 호스트 환경의 TCP 포트(첫 번째 값)를 컨테이너의 TCP 포트(두 번째 값)로 매핑합니다. 이 예제에서 SQL Server는 컨테이너의 TCP 1433에서 수신 대기하고 이 컨테이너는 호스트의 TCP 포트 1433에 공개됩니다. |
--name sql1 | 컨테이너에 대해 임의로 생성된 이름보다는 사용자 지정 이름을 지정합니다. 둘 이상의 컨테이너를 실행하는 경우 이 동일한 이름을 다시 사용할 수 없습니다. |
--hostname sql1 | 컨테이너 호스트 이름을 명시적으로 설정하는 데 사용됩니다. 지정하지 않으면 임의로 생성된 시스템 GUID인 컨테이너 ID가 기본값으로 사용됩니다. |
-d | 백그라운드(디먼)에서 컨테이너를 실행합니다. |
mcr.microsoft.com/mssql/server:2022-latest | SQL Server Linux 컨테이너 이미지입니다. |
ACCEPT_EULA | 최종 사용자 사용권 계약 수락을 확인하기 위해 ACCEPT_EULA 변수를 어떤 값에 설정합니다. SQL Server 이미지에 대한 설정을 해야 합니다. |
MSSQL_SA_PASSWORD | SA 사용자 암호를 구성합니다. |
MSSQL_PID | SQL Server 버전 또는 제품 키를 설정합니다. 가능한 값은 다음과 같습니다. Evaluation Developer Express Web Standard Enterprise 제품 키 제품 키를 지정하는 경우 #####-#####-#####-#####-##### 형식이어야 합니다. 여기서 '#'은 숫자 또는 문자입니다. |
MSSQL_LCID | SQL Server에 사용할 언어 ID를 설정합니다. 예를 들어 1042는 한국어입니다. |
MSSQL_COLLATION | SQL Server에 대한 기본 데이터 정렬을 설정합니다. 이렇게 하면 데이터 정렬에 대한 언어 ID(LCID)의 기본 매핑이 재정의됩니다. Korean_Wansung_CS_AS는 한국어 대소문자 엑센트 무시. |
MSSQL_MEMORY_LIMIT_MB | SQL Server에서 사용할 수 있는 최대 메모리 크기(MB)를 설정합니다. 기본적으로 총 실제 메모리의 80%입니다. |
MSSQL_TCP_PORT | SQL Server가 수신 대기하는 TCP 포트(기본값 1433)를 구성합니다. |
MSSQL_IP_ADDRESS | IP 주소를 설정합니다. 현재 IP 주소는 IPv4 스타일(0.0.0.0)이어야 합니다. |
MSSQL_BACKUP_DIR | 기본 백업 디렉터리 위치를 설정합니다. |
MSSQL_DATA_DIR | 새 SQL Server 데이터베이스 데이터 파일(.mdf)이 생성되는 디렉터리를 변경합니다. |
MSSQL_LOG_DIR | 새 SQL Server 데이터베이스 로그(.ldf) 파일이 생성되는 디렉터리를 변경합니다. |
MSSQL_DUMP_DIR | 기본적으로 SQL Server가 메모리 덤프 및 기타 문제 해결 파일을 보관할 디렉터리를 변경합니다. |
MSSQL_ENABLE_HADR | 가용성 그룹을 사용하도록 설정합니다. 예를 들어 '1'은 사용이고 '0'은 사용 안 함입니다. |
MSSQL_AGENT_ENABLED | SQL Server 에이전트를 사용하도록 설정합니다. 예를 들어 'true'는 사용이고 'false'는 사용 안 함입니다. 기본적으로 에이전트는 사용하지 않도록 설정됩니다. |
MSSQL_MASTER_DATA_FILE | master 데이터베이스 데이터 파일의 위치를 설정합니다. SQL Server를 처음 실행할 때까지 이름은 master.mdf 여야 합니다. |
MSSQL_MASTER_LOG_FILE | master 데이터베이스 로그 파일의 위치를 설정합니다. SQL Server를 처음 실행할 때까지 이름은 master.ldf 여야 합니다. |
MSSQL_ERROR_LOG_FILE | 오류 로그 파일의 위치를 설정합니다. |
Container 진입
docker exec -it MSSQL2022 bash
docker run -e ACCEPT_EULA=Y -e MSSQL_PID='Developer' -e MSSQL_SA_PASSWORD='<YourStrong!Passw0rd>' -e MSSQL_TCP_PORT=1234 -p 1234:1234 -d mcr.microsoft.com/mssql/server:2019-latest
docker run -e ACCEPT_EULA=Y -e MSSQL_PID="Developer" -e MSSQL_SA_PASSWORD="<YourStrong!Passw0rd>" -e MSSQL_TCP_PORT=1234 -p 1234:1234 -d mcr.microsoft.com/mssql/server:2019-latest
연결확인
/opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P "<SA Passw0rd>"
외부
sqlcmd -S <ip_address>,1433 -U SA -P "<SA Passw0rd>"
Docker 명령어 구조 (1) | 2024.09.03 |
---|