gpt4 book ai didi

powershell - DockerFile的一些问题

转载 作者:行者123 更新时间:2023-12-02 20:47:01 24 4
gpt4 key购买 nike

您好,我在设置dockerFile时遇到问题。我想说我是docker下的新手。
这是Docker版本

C:\>docker version
Client:
Version: 18.03.1-ce
API version: 1.37
Go version: go1.9.5
Git commit: 9ee9f40
Built: Thu Apr 26 07:12:48 2018
OS/Arch: windows/amd64
Experimental: false
Orchestrator: swarm`


Server:
Engine:
Version: 18.03.1-ce
API version: 1.37 (minimum version 1.24)
Go version: go1.9.5
Git commit: 9ee9f40
Built: Thu Apr 26 07:21:42 2018
OS/Arch: windows/amd64
Experimental: false

我创建了一个docker镜像,在其中复制了可执行文件。我设法通过启动在容器中运行.exe
。目前,我想使用dockerFile自动执行操作。我的镜像称为 bt1: version1,它基于microsoft / windowsservercore。

这是我的dockerFile问题。

目标是启动一个容器,然后在内部修改文件test.xml,然后启动应用程序BT_simulator.exe。
FROM bt1:version1
WORKDIR "/BTsimulatorV1.1/release"
RUN powershell.exe
RUN "$doc = [xml](Get-Content /BTsimulatorV1.1/release/test.xml)
&& $doc.parameters.connection.port = " "
&& $doc.parameters.connection.ipAddress = " "
&& $doc.parameters.Tool_EEPROM.Serial_Number = " "
&& $doc.save("/BTsimulatorV1.1/release/test.xml")
&& BT_simulator.exe

我不必实现预期的行为。你能帮我吗?

最佳答案

xml文件的操作不应在Dockerfile中完成。在镜像构建期间,Dockerfile仅运行一次。
您需要的是ENTRYPOINT脚本,它将执行文件操作并启动exe。

从RUN powershell.exe开始的所有内容都应删除。该脚本应放入.ps脚本中,并添加到镜像中。然后使用ENTRYPOINT进行调用。

关于powershell - DockerFile的一些问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50931033/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com