version: '3.8'
name: MSSQL2022
services:
sqlserver:
image: mcr.microsoft.com/mssql/server:2022-latest
user: root
restart: always
container_name: MSSQL2022
hostname: MSSQL2022
ports:
- 1431:1433
volumes:
- ./db/mssql/data:/var/opt/mssql/data
environment:
ACCEPT_EULA: Y
MSSQL_SA_PASSWORD : password1!
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 : 도커 컨테이너 타임존 설정
위 내용을 sql2022-docker-compose.yml 로 저장
실행 : docker-compose -f sql2022-docker-compose.yml up -d
내부접속
docker exec -it MSSQL2022 /opt/mssql-tools/bin/sqlcmd -C -S localhost,1433 -U sa -P password1!
'Docker' 카테고리의 다른 글
[Docker] 도커 아키텍처 및 흐름 (0) | 2025.02.19 |
---|---|
[Docker] 도커 개념 설명 | 도커는 왜 사용하는 걸까? (0) | 2025.02.19 |
도커 사용법 (1) | 2025.02.18 |
Docker환경에서 MSSQL설치하기 (0) | 2025.02.18 |
MSSQL 서버 올리기 (5) | 2024.10.31 |