我有一个非常基本的应用程序,它可以写入文件,并且由于写入文件是无限循环的,因此代码不会退出。我希望将其放入docker容器并加入AWS。
本地设置:
我在本地尝试了该解决方案,并且看起来一切正常。下面是代码:
static void Main(string[] args)
{
string path = @"c:\data\MyTest.txt";
int i = 0;
while (true)
{
string createText = $" {i} + Hello and Welcome" + Environment.NewLine;
File.AppendAllText(path, createText);
i++;
}
}
Docker命令:
docker build -t test:1.0 .
docker run -v c:\data {ImageID}
当我执行以上命令时,我正在使用Docker Volumes
,并且看到在../docker/fasdfasdfas/_data
上创建了一个随机文件夹,并且看到MyText.txt
不断被写入其中,而我的CONTAINER NEVER STOPS
到目前为止一切顺利
现在执行AWS步骤:
现在,当我运行相同的命令时
docker run -v c:\data {ImageID}
容器启动并立即停止。不知道这是怎么回事。
Docker文件:
# getting base image
FROM microsoft/windowsservercore:latest
ADD ./bin/debug /exe/
ENTRYPOINT ["/exe/BackendService.bat"]
BackendService.bat
start c:\exe\ConsoleApp16.exe
我检查了日志,也没有看到任何问题
答案 0 :(得分:0)
在您的dockerfile中,未创建c:\data\
目录。
如果那不是问题,请记录或打印错误消息,然后触发docker logs CONTAINER_NAME
或kubectl logs -p POD_NAME
来检查错误。