如何在Dockerfile中为ENTRYPOINT指定工作目录
Docker映像(基于Windows)包含C:\App
的应用程序目录。 在那个目录里面有几个子文件夹和文件,包括一个叫做process.bat
的batch file。 Dockerfile(用于构build映像)像这样结束:
ENTRYPOINT [ "C:\\App\\process.bat" ]
当我使用命令docker run company/app
命令实例化这个镜像时,batch file运行,但是在C:\App
下的其他文件被引用的时候失败。 本质上,工作目录仍然是来自Docker容器入口点的C:\
。
有没有办法在Dockerfile中设置工作目录? 几个替代scheme确实存在:
- 将
-w C:\App
添加到docker run - 在batch file中,我可以在开头
cd /DC:\App
添加一行
但有没有办法指定Dockerfile中的工作目录?
WORKDIR /App
是您可以在您的dockerfile中使用的命令来更改工作目录。
- 无法连接到数据库:错误getaddrinfo ENOTFOUND db db:3306
- Docker-compose mysql似乎无法识别环境variablesMYSQL_RANDOM_ROOT_PASSWORD
- 如何抓取远程最新的maven tar.gz文件?
- 为什么当我向mysql dockerfile中添加`RUN ln -sf / dev / stderr / var / log / mysql / error.log`会中止?
- 在C#中的Docker链接 – 发现通过链接注入环境variables的最佳方法是什么?
- 无法连接到泊坞窗容器中的mongodb
- 如何将命令输出replace为string并将其附加到文件(在Docker中运行的Alpine Linux中)
- 从本地(未发布)的图像build立docker图像
- 如何在docker build中提供和使用命令行参数?
- 如何防止每次我修改代码时重新运行pip安装的Docker
- 如何编写一个Dockerfile,我可以启动一个服务并运行一个shell,并接受shell的参数?