我知道我有这些图像的图像和实例 - 容器。但。 考虑我为.net核心应用程序创建了图像映像。这是docker文件。
FROM microsoft/dotnet:1.1-sdk
WORKDIR /app
COPY . ./
RUN dotnet restore
RUN dotnet publish -c Release -o out
ENTRYPOINT ["dotnet", "out/dotnetapp.dll"]
我的dotnetapp.dll
在启动时抛出异常。
所以,现在我可以建立图像:
docker build . -t my-image
然后创建并运行图像:
docker run --name my-container -t my-image
所有内容都按预期运行 - 运行我的dotnetapp.dll然后抛出异常(从应用内部开始,如预期的那样)。
我想如何重新运行(重新启动)我的容器。
所以我认为start
应该足够了:
docker start my-container
但没有任何反应(我的dotnetapp.dll没有运行)。我也试图停下来重新开始:
docker stop my-container
docker start my-container
运行也没有帮助:
docker run --name my-container -t my-image
因为容器已经存在。
所以,到现在为止我重新运行app的模式是:
docker rm my-container --force
docker run --name my-container -t my-image
但我不认为这是正确的方式。
那么为什么start/stop
在这种情况下不起作用?如何重新启动容器以便在不删除容器的情况下再次运行dotnetapp.dll
?