首页 > 解决方案 > 容器运行时内的可执行 .exe 文件而不生成 dockerfile

问题描述

我想知道是否可以在不创建 dockerfile 的情况下在容器运行时运行可执行文件,即 .exe 文件。我知道可以使用 dockerfile 使用以下方法来完成

  FROM ubuntu
    MAINTAINER me@gmail.com
    COPY name.exe /bin/
    CMD ["/bin/name.exe", "input1", "output"]

但我不想创建 dockerfile 并在容器内执行 .exe。请指导我这个。

标签: docker

解决方案


这是不可能的,原因是docker 是什么。这是一个容器化应用程序。

官方文档很好地描述了容器与独立应用程序的不同之处

从根本上说,容器只不过是一个正在运行的进程,它应用了一些附加的封装特性,以使其与主机和其他容器隔离。容器隔离最重要的方面之一是每个容器都与自己的私有文件系统交互;此文件系统由 Docker 映像提供。映像包括运行应用程序所需的一切——代码或二进制文件、运行时、依赖项以及任何其他所需的文件系统对象。

因此,如果 docker 允许您在没有docker 文件的情况下运行可执行文件或任何应用程序文件(jar、war 等),这从根本上违背了使用 docker 的目的。这与运行虚拟机或直接在主机上运行应用程序非常相似。


推荐阅读