Ref.
Docker: Linux에서 SQL Server용 컨테이너 설치 - SQL Server
EX) 데이터베이스 버전 관리
이 상황에서는 각각의 환경이 다른 데이터베이스 버전을 사용하고 있어, 다른 버전에서 발생할 수 있는 호환성 문제 등이 발생할 가능성이 있다.
이제, 모든 환경에서는 동일한 MySQL 버전이 사용되므로 버전 간의 호환성 문제를 방지할 수 있습니다. 개발, 테스트, 운영 간의 일관성이 확보되었기 때문에 애플리케이션은 어떤 환경에서도 예상대로 동작할 가능성이 높아집니다.
💡 즉, Docker를 사용하면 애플리케이션이 실행되는 환경을 일관되게 만들 수 있어서 다양한 환경에서의 호환성을 향상시키고, 개발자와 운영팀 간의 협업을 더욱 효과적으로 만들어 준다.볼륨(volumes) -> Storage 공유
Docker File
dockr-compose.yml
sudo docker pull mcr.microsoft.com/mssql/server:2019-latest
Microsoft SQL Server - Ubuntu based images by Microsoft | Docker Hub
sudo docker run -e "ACCEPT_EULA=Y" -e "MSSQL_SA_PASSWORD=비밀번호 입력" \
-p 1433:1433 --name mssql_sever -d \
mcr.microsoft.com/mssql/server:2019-latest
매개변수 | 설명 |
---|---|
-e "ACCEPT_EULA=Y" | 변수를 ACCEPT_EULA 임의의 값으로 설정하여 최종 사용자 라이선스 계약에 동의했는지 확인합니다. SQL Server 이미지에 필요한 설정입니다. |
-e "MSSQL_SA_PASSWORD=YourStrong@Passw0rd" | 8자 이상이며 암호 정책을https://learn.microsoft.com/ko-kr/sql/relational-databases/security/password-policy?view=sql-server-ver15. SQL Server 이미지에 필요한 설정입니다. |
-e "MSSQL_COLLATION=<SQL_Server_collation>" | 기본값 SQL_Latin1_General_CP1_CI_AS 대신 사용자 지정 SQL Server 데이터 정렬을 지정합니다. |
-p 1433:1433 | 호스트 환경의 TCP 포트(첫 번째 값)를 컨테이너의 TCP 포트(두 번째 값)로 매핑합니다. 이 예제에서 SQL Server는 컨테이너의 TCP 1433에서 수신 대기하고 이 컨테이너는 호스트의 TCP 포트 1433에 공개됩니다. |
--name 컨테이너명 | 임의로 생성된 컨테이너가 아닌 컨테이너에 대한 사용자 지정 이름을 지정합니다. 둘 이상의 컨테이너를 실행하는 경우 이 동일한 이름을 다시 사용할 수 없습니다. |
--hostname 호스트명 | 컨테이너 호스트 이름을 명시적으로 설정하는 데 사용됩니다. 지정하지 않으면 임의로 생성된 시스템 GUID인 컨테이너 ID가 기본값으로 사용됩니다. |
-d | 백그라운드(디먼)에서 컨테이너를 실행합니다. |
mcr.microsoft.com/mssql/server:2019-latest | SQL Server Linux 컨테이너 이미지입니다. |
sudo docker ps -a