在dockerfile中运行可执行文件

sop*_*ain 5 docker dockerfile

我是Docker的新手,正在阅读特恩布尔的The Docker Book.从本质上讲,我掌握了容器如何工作的条款和过程以及图像在传输协议和虚拟化操作系统中的工作方式.

但是,我的dockerfile没有运行本地的可执行文件,我无法弄清楚如何将我的本地可执行文件添加到我的容器的/ bin目录中.

我的目标:我想将name.exe添加到容器的/ bin目录中.然后我想有一个docker文件

FROM ubuntu
MAINTAINER me@gmail.com
RUN ["name.exe", "input1", "output"]
Run Code Online (Sandbox Code Playgroud)

让我的容器运行我的程序,并创建一个输出.我的目标是让他们将我的容器放到我的仓库中,并与我编写的所有/ bin程序共享它.

但是,我无法这样做.

Tom*_*cek 8

请记住,name.exe必须与dockerfile位于同一目录中.从文档:

<src>路径必须构建的上下文中; 你不能COPY ../something /something,因为docker构建的第一步是将上下文目录(和子目录)发送到docker守护程序.

您的dockerfile可能如下所示:

FROM ubuntu
MAINTAINER me@gmail.com
COPY name.exe /bin/
CMD ["/bin/name.exe", "input1", "output"]
Run Code Online (Sandbox Code Playgroud)

你可以像这样构建它:

docker build --tag=me/my-image .
Run Code Online (Sandbox Code Playgroud)

当你运行它(docker run me/my-image)时,它会运行/bin/name.exe input1 output.