我有一个Windows docker容器,用于在node.js中运行Azure函数应用程序,因此Dockerfile中的最后一行是“CMD npm start”。然而,我的应用程序要求容器中也运行特定的可执行文件。现在我的函数应用程序中有一个函数,当调用时启动可执行文件,但我需要它作为容器启动的一部分自动启动。因为这是一个函数应用程序,没有一个入口点,我可以在任何其他事情之前调用我的start函数,所以我需要找到一种方法来启动Dockerfile本身中的可执行文件。
Dockerfile的CMD会让我启动一个可执行文件或运行“npm start”,但不能同时启动两个,所以我试图找到另一种方法来启动可执行文件。
当在本地命令控制台中启动exe时,提示符会立即再次显示下一个命令,所以我假设我可以这样做:
RUN ProgramName.exe
CMD npm start
字符串
或
CMD ProgramName.exe && npm start
型
但是当我这样做时,命令无限期挂起,我不知道为什么。
有谁知道我如何可以自动启动exe运行在我的容器 * 没有 * 使用CMD或ENTRYPOINT它?
1条答案
按热度按时间r6l8ljro1#
你需要以某种方式让程序在后台运行。如果它是一个Linux容器,我会知道怎么做。但对于Windows,我不知道。
可以使用
start
命令吗?https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/start