如何解决如何检查退出状态的Docker容器的内容1
我不得不提到我是docker world的新手。
我已使用图像为Web应用程序创建docker容器。当我使用以下命令运行应用程序时:
all supported versions
容器启动。 当我使用以下方法检查状态时:
$ docker run --privileged --name img -d -e ROOT_PASS="root" -e PRODUCT_CMD="startapp" -v /C:/w:/application -p 8080:8080 -p 1521:1521 -p 5001:5001 -p 9990:9990 app_image:1.0
容器的状态为已退出(1)
此后,我尝试使用来访问容器
$ docker ps -a
我收到错误消息: 来自守护程序的错误响应:容器4bb80921849e0fbddde4aff564c7a523aa94f163abcf54ec003ff785659c8bb0未运行
我的问题:如何检查Docker容器的内容以确保它包含所有文件?我正在使用docker桌面。我可以在文件系统中的某个位置找到该容器吗?
解决方法
我将使用这种方法来找出图像中的问题。
注意:如果您从未真正开始使用容器,并且需要找出原因,则此答案有效。如果容器确实启动并且由于某些原因崩溃了,则此方法无效。
检查用于启动容器的命令是什么:
docker inspect app_image:1.0 | jq -r '.[0]["Config"]["Cmd"][0]'
启动一个覆盖原始命令的新容器:
docker run --privileged \
--name img_debugging \
-it \
-e ROOT_PASS="root" -e PRODUCT_CMD="startapp" \
-v /C:/w:/application \
-p 8080:8080 -p 1521:1521 -p 5001:5001 -p 9990:9990 \
app_image:1.0 /bin/bash
现在,您应该在新创建的容器中,并且应该能够简单地执行原始命令并找出日志中的内容。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。