如何调试我设置为始终重启的docker容器。
我有一个启动nodejs应用程序的容器,带有 CMD [“nodemon”,“/ usr / src / app / app.js”]在其他容器上工作得很好,但在我创建的新容器上没有用隔离器记录容器名称:
用法:nodemon [nodemon options] [script.js] [args]
有关详情,请参阅“nodemon --help”。
如何连接到容器以获得比日志更多的信息,例如,查看一些配置文件或者我的nodejs文件是否已被复制。
我没有找到方法:我想使用docker exec -it bash并在我的docker中导航,但因为它总是重新启动我不能。如何调试这种容器?
编辑:我使用CMD [“bash”]但是当我使用docker exec -it bash时我不能使用因为容器不断重启。
答案 0 :(得分:1)
您可以在容器映像上创建一个新映像,以及另一个启动脚本(运行node命令进行测试,然后打开bash)
您可能需要复制该脚本
COPY myscript /usr/local/bin
CMD ["/usr/local/bin/myscript"]
这样,您可以将当前图像测试为包裹在测试图像中。
您甚至只能在新图片中使用bash
CMD["bash"]
手动启动命令。
为此,您需要使用以下命令运行该图像:
docker run -it --rm myNewImage
这将打开交互式 bash会话。