【发布时间】:2020-10-25 23:41:00
【问题描述】:
我正在尝试在 Windows 10 的 Docker 上设置 MSSQL,但由于某种原因它开始关闭我的容器
我已经这样使用了几个月,但现在我不知道发生了什么
C:\Users\user\
λ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
C:\Users\user\
λ docker login
Authenticating with existing credentials...
Login Succeeded
C:\Users\user\
λ docker run -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=<YourStrong!Passw0rd>123' -p 1433:1433 --name sql -d mcr.microsoft.com/mssql/server:2017-latest
337e5efb35f0bf4b465181a0f8be4851b12f353a3a8710ddf817d2f501e5fea
C:\Users\user\
λ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
347q5effb3cf0 mcr.microsoft.com/mssql/server:2017-latest "/opt/mssql/bin/sqls…" 3 seconds ago Up 2 seconds 0.0.0.0:1433->1433/tcp sql
C:\Users\user\
λ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
347q5effb3cf0 mcr.microsoft.com/mssql/server:2017-latest "/opt/mssql/bin/sqls…" 6 seconds ago Exited (1) 2 seconds ago sql
C:\Users\user\
λ docker start sql
sql
C:\Users\user\
λ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
347q5effb3cf0 mcr.microsoft.com/mssql/server:2017-latest "/opt/mssql/bin/sqls…" 14 seconds ago Up 2 seconds 0.0.0.0:1433->1433/tcp sql
C:\Users\user\
λ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
347q5effb3cf0 mcr.microsoft.com/mssql/server:2017-latest "/opt/mssql/bin/sqls…" 16 seconds ago Exited (1) 1 second ago sql
docker 记录 sql
表演
必须先接受 SQL Server 最终用户许可协议 (EULA),然后才能接受 SQL 服务器可以启动。本产品的许可条款可从以下网址下载 http://go.microsoft.com/fwlink/?LinkId=746388.
您可以通过指定 --accept-eula 命令行选项来接受 EULA, 设置 ACCEPT_EULA 环境变量,或使用 mssql-conf 工具。 SQL Server 最终用户许可协议 (EULA) 必须在 SQL 之前接受 服务器可以启动。本产品的许可条款可从以下网址下载 http://go.microsoft.com/fwlink/?LinkId=746388.
您可以通过指定 --accept-eula 命令行选项来接受 EULA, 设置 ACCEPT_EULA 环境变量,或使用 mssql-conf 工具。
有人知道可能出了什么问题吗?
【问题讨论】:
-
尝试删除 ACCEPT_EULA 和 SA_PASSWORD 周围的引号:
docker run -e ACCEPT_EULA=Y -e exec SA_PASSWORD=<YourStrong!Passw0rd>123 --name sql -d mcr.microsoft.com/mssql/server:2017-latest -
@GarethLyons
The specified file can not be found. -
对不起,中间有一个无意的执行官。应该是
docker run -e ACCEPT_EULA=Y -e SA_PASSWORD=<YourStrong!Passw0rd>123 --name sql -d mcr.microsoft.com/mssql/server:2017-latest -
@GarethLyons Nope :/
C:\Users\user>docker run -e ACCEPT_EULA=Y -e SA_PASSWORD=<YourStrong!Passw0rd>123 --name sql -d mcr.microsoft.com/mssql/server:2017-latest The specified file can not be found. -
好的,我的刚切换到Linux;使用单引号得到相同的错误,但它适用于双引号
docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=<YourStrong!Passw0rd>123" -p 1433:1433 --name sql -d mcr.microsoft.com/mssql/server:2017-latest
标签: sql-server