我正在尝试在Docker容器中安装SQL Server和.NET 4.7.2。
我试图通过docker文件安装它们,但是在安装.NET 4.7.2时,它始终会失败,因为它需要重新启动“计算机”。我尝试通过docker构建一个dockerfile。
我还尝试通过Chocolatey在我的SQL Server容器中安装.net 4.7.2,但也需要重新启动。哪个行不通。
我还尝试通过Chocolatey在.net 4.7.2容器上安装SQL Server,但仍然失败。
下一步,我正在考虑创建一个SQL Server容器和另一个.net 4.7.2容器,这些容器将运行我的测试并启动我的服务。然后链接它们,使其可以与SQL Server容器中的数据库进行通信。问题是我很难将它们链接在一起。
请注意,这不是一个ASP.NET项目(关于ASP.NET和SQL Server的教程很多,但不适用于我的情况)...
有关我的dockerfile,请参见以下内容:
FROM microsoft/mssql-server-windows-developer
ENV sa_password=Passw0rd
ENV ACCEPT_EULA=Y
ENV download_url="https://download.microsoft.com/download/9/2/2/9228AAC2-90D1-4F48-B423-AF345296C7DD/EN/x64/DacFramework.msi"
ENV NET_DP_472 https://download.microsoft.com/download/6/E/4/6E48E8AB-DC00-419E-9704-06DD46E5F81D/NDP472-KB4054530-x86-x64-AllOS-ENU.exe
RUN Invoke-WebRequest -Uri $env:download_url -OutFile DacFramework.msi ; `
Start-Process msiexec.exe -ArgumentList '/i', 'DacFramework.msi', '/quiet', '/norestart' -NoNewWindow -Wait; `
Remove-Item -Force DacFramework.msi
# net framework -> 472
RUN Invoke-WebRequest $Env:NET_DP_472 -OutFile framework472.exe -UseBasicParsing;
Start-Process framework472.exe -ArgumentList '/q' -Wait;
Remove-Item -Force framework472.exe
答案 0 :(得分:0)
如果将n
添加到-ArgumentList "/qn"
,这将阻止重新启动