繁体   English   中英

如何在 Dockerfile 中运行 bash 文件?

[英]How to run bash file in Dockerfile?

我试图通过 Dockerfile 中的 CMD["bash" ,"start.bash"] 执行名为 start.bash 的 bash 文件。 当我创建图像时,尽管 bash 文件当然已正确复制到 dockerfile 中,但由于某种原因不会执行此命令。 关键是,当我尝试在容器本身内运行此命令时,它是成功的。

这是我的 Dockerfile:


# build back end
FROM node:12.22.12 AS server_build

###ENV HOSTNAME myhost

WORKDIR /VideoServiceApp

COPY ./projConf.json /VideoServiceApp
COPY ./projVideoApp.json /VideoServiceApp
COPY ./front/UIVideo ./front/UIVideo
COPY ./front/videoService ./front/videoService
COPY --from=client_build /VideoServiceApp/front/video/dist/video /VideoServiceApp/front/video/dist/video
COPY ./start.bash /VideoServiceApp
COPY ./classes ./classes

WORKDIR /VideoServiceApp/front/UIVideo
RUN npm install

WORKDIR /VideoServiceApp/front/videoService
RUN npm install && npm install -g typescript@latest
RUN tsc

EXPOSE 7717 7708

WORKDIR /VideoServiceApp
CMD ["bash" , "start.bash"] 

当您使用 CMD 数组的语法时,您需要指定命令的完整路径。

CMD ["/bin/bash", "start.bash"]

您也可以切换到CMD的 shell 形式

CMD bash start.bash

有关更多信息,请阅读CMD 文档

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM