소리소문 없이... 사랑도 명예도 이름도 남김 없이...
DexCore.net

Docker

[Docker] 윈도우에 도커로 MSSQL 설치하고 접속하기

탑~! 2025. 2. 19. 11:04

1. 도커 컴포즈 파일 작성하기

MSSQL은 아래와 같은 설정으로 docker-compose.yml 파일을 작성할 수 있다.

 
services:
  sqlserver:
    image: mcr.microsoft.com/mssql/server:2022-latest
    user: root
    restart: always
    container_name: mssql2022
    ports:
      - 1433:1433
    volumes:
      - ./db/mssql/data:/var/opt/mssql/data
    environment:
      ACCEPT_EULA: Y
      MSSQL_SA_PASSWORD: developer123!@
      TZ: Asia/Seoul
 
  • user(root 계정) 반드시 설정(안하면 permission error 발생)
  • restart는 오류 발생시 재시작 여부 또는 첫 부팅시 자동 실행 여부. Docker 시작될 시에 컨테이너가 자동으로 시작되게 하고 싶으면(컴퓨터를 켜고 docker를 실행만 하면 MSSQL을 쓰게 하고 싶으면 always를 넣자)
  • container_name 원하는 이름으로 설정
  • port는 1433:1433으로 맵핑(MSSQL 기본 포트 번호는 1433)
  • volumes => 컨테이너 내부 데이터를 디스크와 공유하기 위해 volume 설정
  • 그외 필요한 environment(환경 변수) 설정

- ACCEPT_EULA : 최종 사용자 사용권 계약 수락을 확인하기 위해 ACCEPT_EULA 변수를 어떤 값에 설정.

- MSSQL_SA_PASSWORD : 8자 이상이고 SQL Server 암호 요구 사항을 충족하는 자신만의 강력한 암호를 지정.

- TZ : 도커 컨테이너 타임존 설정

2. 도커 컨테이너 생성하기

① 바탕화면 또는 시작 메뉴에 Docker Desktop 링크를 클릭해 Docker Desktop을 실행한다.

② 터미널에서 docker-compose.yml 파일이 있는 위치로 이동하여 아래와 같은 명령어를 실행한다.

PS E:\docker> docker-compose -p db up -d

③ 해당 컨테이너가 제대로 생성되었는지 아래와 같은 명령어로 컨테이너 목록을 확인한다.

PS E:\docker> docker ps

④ Docker Desktop에서 실행 중인 것을 확인할 수 있다.

⑤ 컨테이너 진입하여 접속 확인

 
PS E:\docker> docker exec -it mssql2022 /opt/mssql-tools/bin/sqlcmd -S localhost -U sa
Password:
1>
 

3. SSMS(SQL Server Management Studio)를 통해 접속 확인

① 위에서 설정한 계정(sa) 접속 정보를 입력한 후 접속을 시도

② 정상적으로 진행이 잘 되었다면 아래 사진처럼 접속이 완료

- 쿼리 분석기에서 아래 쿼리로 버전 확인

SELECT @@VERSION AS [VERSION];

- 쿼리 분석기에서 아래 쿼리로 현재 타임존, 일시 확인

SELECT CURRENT_TIMEZONE() AS [CUR_TIMEZONE], GETDATE() AS [CUR_DATETIME];
 
 
728x90
반응형