c++ - 将简单的 exe 运行到运行 microsoft/windowsservercore 的 docker 容器中

标签 c++ windows docker docker-for-windows

我想在图像下运行的 Docker 容器中运行一个显示“Hello World”的简单应用程序 微软/windowsservercore。

-> 我将我的可执行文件复制到一个容器中,然后提交我的容器以保存状态。 -> 我启动了我的容器并启动了我的可执行文件。

问题我没有输出

C:\>docker version
Client:
Version:      18.03.1-ce
API version:  1.37
Go version:   go1.9.5
Git commit:   9ee9f40
Built:        Thu Apr 26 07:12:48 2018
OS/Arch:      windows/amd64
Experimental: false
Orchestrator: swarm

Server:
 Engine:
  Version:      18.03.1-ce
  API version:  1.37 (minimum version 1.24)
  Go version:   go1.9.5
  Git commit:   9ee9f40
  Built:        Thu Apr 26 07:21:42 2018
  OS/Arch:      windows/amd64
 Experimental: false

Hello World 代码源

#include <iostream>

int main()
{
 std::cout << "Hello World " << "!\n";
}

可执行文件在 Windows 机器上完美运行。

最佳答案

问题是缺少基本的dll,可以引用:https://github.com/docker/for-win/issues/700

您也可以试试 microsoft/aspnetcore。

关于c++ - 将简单的 exe 运行到运行 microsoft/windowsservercore 的 docker 容器中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50877937/

相关文章:

c++ - 输出是垃圾值

c++ - 改变 const std::string 引用的引用

c++ - 在同一架构上运行的静态编译的纯标准 C++ 程序是否可移植?

docker - 在 Docker 中运行 Yocto, "make menuconfig"失败

image - 使用 Docker 从私有(private)注册表加载具有依赖项的镜像

c++ - 初始化一个大的全局常量对象

关闭从 _open_osfhandle 返回的 fd 而不关闭底层句柄

c++ - 奇怪的! linux 和 windows sprintf float 到文件

windows - 最新版本 Chromium Embedded Framework 3

docker - 使用 Gitlab CI docker-in-docker 时如何修复 docker 容器中的 'sh: tsc not found' 错误