我在dockerfile中尝试以下命令,但它没有运行脚本。还有其他命令用于在dockerfile中运行ps脚本吗?
ADD Windowss.ps1。
CMD powershell。\ Windowss.ps1;
答案 0 :(得分:6)
要运行PS1脚本文件,您可以执行以下操作:
SHELL ["cmd", "/S", "/C"]
RUN powershell -noexit "& ""C:\Chocolatey\lib\chocolatey.0.10.8\tools\chocolateyInstall.ps1"""
你也可以这样做:
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]
WORKDIR C:\
RUN .\install_pfx.ps1
答案 1 :(得分:2)
您可以使用RUN
。
您可以使用
运行poweshell命令RUN powershell -Command Add-WindowsFeature Web-Server
答案 2 :(得分:0)
是的,还有另一个命令。 ENTRYPOINT ["executable", "param1", "param2"]
是一个命令,根据documentation,它将使容器在其开始时运行可执行文件。它可以与CMD
一起使用。
答案 3 :(得分:0)
我有一个类似的问题,我使用 shell 指令解决了这个问题。
FROM mcr.microsoft.com/windows/servercore:20H2 AS PS
SHELL ["powershell"]
RUN Write-Host "Hello from docker! Today is $(Get-Date)"
编辑:刚刚注意到上面的答案比我的命令要好一些。点赞吧! https://stackoverflow.com/a/48804143/190831