一、需求背景
由于Windowns服务器性能配置不足,需要在Linux主机上安装MSSQL服务。
[root@XAYL sqlserver2016]# docker -v
Docker version 24.0.6, build ed223bc
二、镜像下载
下载地址:https://hub.docker.com/_/microsoft-mssql-server
拉取镜像,以SQL Server 2017为例:
docker pull mcr.microsoft.com/mssql/server:2017-latest
2022-preview-ubuntu-22.04
docker pull mcr.microsoft.com/mssql/server:2022-preview-ubuntu-22.04
2022-latest
docker pull mcr.microsoft.com/mssql/server:2022-latest
2019-latest
docker pull mcr.microsoft.com/mssql/server:2019-latest
2017-latest
docker pull mcr.microsoft.com/mssql/server:2017-latest
三、容器运行
创建容器命令
docker run --name=SqlServer2016 -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=YinLing2024' -e 'MSSQL_PID=2C9JR-K3RNG-QD4M4-JQ2HR-8468J' -p 2433:1433 -v /home2/sqlserver2016:/var/opt/mssql -d mcr.microsoft.com/mssql/server:2017-latest
运行后服务宕掉,查看日志:
[
SQL Server 2017 will run as non-root by default.
This container is running as user root.
To learn more visit https://go.microsoft.com/fwlink/?linkid=2099216.
排查后发现挂载存在问题,重新使用以下命令创建:
docker run -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=YinLing2024' --name 'mssql' -p 1433:1433 -v sql1data:/var/opt/mssql -d mcr.microsoft.com/mssql/server:2017-latest
默认挂载路径:
docker inspect d1656e6c8f6c
/home1/docker_images/volumes/sql1data/_data
连接测试: