标签:容器 1433 sql1 mssql SQL Docker docker Sever
https://www.cnblogs.com/x666-6/p/18102094
- 拉取镜像
|
docker pull mcr.microsoft.com/mssql/server:2022-latest |
- 运行容器
|
docker run -e "ACCEPT_EULA=Y" -e "MSSQL_SA_PASSWORD=ChenDaDliu2023" -p 1433:1433 --name sql1 --hostname sqlServer -d mcr.microsoft.com/mssql/server:2022-latest |
参数 | 说明 |
-e "ACCEPT_EULA=Y" |
将 ACCEPT_EULA 变量设置为任意值,以确认接受最终用户许可协议。 SQL Server 映像>的必需设置。 |
-e "MSSQL_SA_PASSWORD=YourStrong@Passw0rd" |
指定至少包含 8 个字符且符合密码策略的强密码。 SQL Server 映像的必需设置。 |
-e "MSSQL_COLLATION=<SQL_Server_collation>" |
指定自定义 SQL Server 排序规则,而不使用默认值 SQL_Latin1_General_CP1_CI_AS。 |
-p 1433:1433 |
将主机环境中的 TCP 端口(第一个值)映射到容器中的 TCP 端口(第二个值)。 在此示例中,SQL Server 侦听容器中的 TCP 1433,此容器端口随后会对主机上的 TCP 端口 1433 公开。 |
--name sql1 |
为容器指定一个自定义名称,而不是使用随机生成的名称。 如果运行多个容器,则无法重复使用相同的名称。 |
--hostname sql1 |
用于显式设置容器主机名。 如果未指定主机名,则主机名默认为容器 ID,这是随机生成的系统 GUID。 |
-d |
|
mcr.microsoft.com/mssql/server:2022-latest |
SQL Server Linux 容器映像。 |
如果Docker容器启动报WARNING: IPv4 forwarding is disabled. Networking will not work
解决方法
打开sysctl配置文件
添加如下代码
重启network服务
|
systemctl restart network |
查看是否修改成功
|
sysctl net.ipv4.ip_forward |
- 查看运行的容器
运行成功应该会看到与下面类似的输出:
|
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES |
|
d4a1999ef83e mcr.microsoft.com/mssql/server:2022-latest "/opt/mssql/bin/perm..." 2 minutes ago Up 2 minutes 0.0.0.0:1433->1433/tcp, :::1433->1433/tcp sql1 |
4.如果运行不成功,通过以下命令查看docker容器内错误日志
|
docker exec -t sql1 cat /var/opt/mssql/log/errorlog | grep connection |
BASH 复制 全屏
- 删除容器
|
docker stop sql1 |
|
docker rm sql1
|
标签:容器,
1433,
sql1,
mssql,
SQL,
Docker,
docker,
Sever
From: https://www.cnblogs.com/ucdos/p/18241267