附加到生成异常的容器

时间:2019-02-02 23:39:50

标签: docker

我有一个因异常而提前退出的Docker容器。我想连接到它以调试问题,但为了连接到它,我似乎无法使其保持运行状态。

这是我最初的运行命令:

docker run -p 8080:80 --env-file=Environment/secret.env --name starter1 starterapp 

如果我尝试:

docker attach starter1

它给出:

  

您无法附加到已停止的容器,请先启动

如果我尝试:

docker start -ai starter1

开始但给我例外然后退出。

如果我尝试:

docker exec -i -t starter1 /bin/bash

我得到:

  

守护程序的错误响应:容器87ac5aade2d298c113bd31b50944b5095601eafc6fe29aebc046eacc76c5c2c9未运行

我也尝试过:

docker run -it --rm starterapp /bin/bash -i

但是它在发生异常后仍然会转储,并且不会打开bash命令提示符。

如何进入bash shell调试问题?由于缺少值,因此从kestrel(网络服务器)生成了异常,因此我应该能够免费访问bash提示问题,我只是无法使其保持运行状态,因此无法对其进行附加。

1 个答案:

答案 0 :(得分:2)

使用--entrypoint参数覆盖入口点。您可以执行以下操作:

docker run -p 8080:80 -ti --env-file=Environment/secret.env --name starter1 --entrypoint /bin/bash starterapp