首页 > 解决方案 > docker中的控制台应用程序不起作用

问题描述

我正在尝试实际学习 docker。首先,我创建了一个简单的 .net core 3.1 控制台应用程序。此应用程序只是在特定位置的文本文件中写入消息。我已经从它创建了一个 docker 映像,然后从该映像创建了 docker 容器。当我运行 docker 容器时,它会成功运行并停止。

码头工人文件:

FROM mcr.microsoft.com/dotnet/aspnet:3.1

COPY bin/Release/netcoreapp3.1/publish App/

WORKDIR /App

ENTRYPOINT ["dotnet", "ConsoleApp1.dll"]

我还使用命令“docker logs container_id”检查了日志。但它什么也不返回。

我错过了什么吗?

标签: docker.net-core

解决方案


Docker 在容器内运行一个进程,当该进程结束时,容器也会停止并结束。由于容器中的进程只写入一些内容并退出,因此容器也会退出并停止。

文本文件也写在容器文件系统中。因此,除非您使用卷,否则您将无法在主机中看到它。尝试将字符串打印到标准输出


推荐阅读