我创建了一个 Docker 容器:
sudo docker pull microsoft/mssql-server-linux:2017-latest
Run Code Online (Sandbox Code Playgroud)
然后我运行它:
sudo docker run -e 'ACCEPT_EULA=Y' -e 'MSSQL_SA_PASSWORD=root' -p 1401:1433
--name sqlserver1 -d microsoft/mssql-server-linux:2017-latest
Run Code Online (Sandbox Code Playgroud)
我跑了:
docker start sqlserver1
Run Code Online (Sandbox Code Playgroud)
大约 3 秒后docker ps返回空 - 让我认为容器正在关闭。
我是 Docker 的新手 - 这真的会自动关闭吗?如果是这样,我该如何防止?
我试了一下,看起来你的问题不是 Docker 问题……它只是一个 MSSQL 问题。如果您查看容器的日志,您将看到:
ERROR: Unable to set system administrator password: Password validation failed.
The password does not meet SQL Server password policy requirements because it is
too short. The password must be at least 8 characters.
Run Code Online (Sandbox Code Playgroud)
看起来 MSSQL 强制执行密码复杂性要求,其中包括字符类的长度和数量。以下似乎工作正常:
docker run -it -e 'ACCEPT_EULA=Y' -e 'MSSQL_SA_PASSWORD=r00t.R00T' -p 1401:1433 --name sqlserver1 microsoft/mssql-server-linux:2017-latest
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1152 次 |
| 最近记录: |