반응형
MSSQL(SQL server)를 docker compose로 띄우는 방법!!
(ms공식 문서에는 docker로 띄눈 방법은 있지만 yml파일을 활용한 방법은 없어서 정리해봅니다._.)
docker, docker-compose는 미리 설치가 되어있어야합니다.
01. Docker Image 다운받기
docker pull mcr.microsoft.com/mssql/server:2019-latest
위와 같이 docker pull을 사용해 mssql docker image를 다운 받습니다.
02. docker-compose.yml 작성
version: '3.7'
services:
sqlserver:
image: mcr.microsoft.com/mssql/server:2019-latest
user: root
container_name: sql1
hostname: sql1
ports:
- 1433:1433
volumes:
- ./sql1data:/var/opt/mssql
environment:
ACCEPT_EULA: Y
SA_PASSWORD: password1!
위와 같이 docker-compose.yml 파일을 만들고 몇가지 설정을 해줍니다.
- user: root => 반드시 해줍니다. 안하면 permission error 발생.
- container_name과 hostname 설정을 원하는 이름으로 해주면됩니다. 전 sql1으로 했네여
- port는 1433:1433으로 맵핑 시켜줍니다. (mssql 기본포트번호는 1433)
- volumes => 컨테이너 내부 데이터를 디스크와 공유하기 위해 volume 설정해줬구요.
- 그외 필요한 환경 변수 설정해줬습니다.
03. docker-compose로 컨테이너 띄우기
docker-compose -f ./docker-compose.yml up -d
위와 같이 백그라운드 실행 시켜줍니다. (-d 옵션)
kang@kang:~$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
6b35140b61b0 mcr.microsoft.com/mssql/server:2019-latest "/opt/mssql/bin/perm…" 31 minutes ago Up 31 minutes 0.0.0.0:1433->1433/tcp sql1
정상적으로 떴는지 확인해줍니다. STATUS가 Up상태가 아니라면, 로그를 확인해줍니다.(docker logs sql1)
04. SQL Server Management Studio로 접속해보기
위와 같이 sa계정과 docker-compose.yml에 설정한 SA_PASSWORD 값을 사용해 연결 할 수 있습니다.
반응형
'개발 이야기 > RDBMS' 카테고리의 다른 글
자주 쓰는 DB Command와 Query (0) | 2024.05.03 |
---|---|
Mysql을 Docker compose로 띄우기 (0) | 2024.01.07 |
Oracle_HINT, USE HASH로 성능 끌어올리기 (0) | 2018.05.25 |
Oracle_Column type 변경 시, 이미 데이터가 있을 때 어떻게? (0) | 2018.05.25 |
Oracle_LISTAGG함수, 여러 데이터를 한 Row에 표현 (0) | 2018.05.25 |