「Docker」网络调试的一个小技巧
条评论有时当容器地网络出现问题时需要我们利用一些命令进行调试, 但容器内部却没有安装这些调试工具; 这时我们可以新建一个容器, 让它和之前的容器共享同一个 Network Namespace , 这样我们便可以在新容器中调试之前容器地网络问题了.
示例
当我们启动 nginx 容器, 想检查容器中的 80 端口是否开启时会发现没有对应地命令:
[ec2-user@ip-10-24-254-11 ~]$ docker run --name nginx -d nginx |
这时我们可以基于容器 nginx 的 Network Namespace 启动一个新的容器:
[ec2-user@ip-10-24-254-11 ~]$ docker run --name debug -it -d --net container:nginx busybox |
这时便可在新建的 debug 容器中调试之前容器的网络了:
[ec2-user@ip-10-24-254-11 ~]$ docker exec -it debug sh |
- 本文链接:https://hiberabyss.github.io/2018/02/07/docker-network-debug/
- 版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC-SA 3.0 CN 许可协议。转载请注明出处!