微服务使用的基础镜像尽可能的小,如果进行调试时;可以采用debug容器进行访问。
1. 拉取debug镜像
$ docker pull murwen/centos-full
Using default tag: latest
latest: Pulling from murwen/centos-full
Image docker.io/murwen/centos-full:latest uses outdated schema1 manifest format. Please upgrade to a schema2 image for better future compatibility. More information at https://docs.docker.com/registry/spec/deprecated-schema-v1/
5f70bf18a086: Pull complete
6ad012af89d8: Pull complete
f69f0c90ffa7: Pull complete
Digest: sha256:976e9252b5149a228156130925e6500c303467a0b3fed7097851e86a5b6ec091
Status: Downloaded newer image for murwen/centos-full:latest
docker.io/murwen/centos-full:latest
2. 查看debug镜像
$ docker images
murwen/centos-full latest 4369029340b0 5 years ago 3.05GB
3. 查看待调试服务docker
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
3b34ba0685a8 master "" 3 hours ago Up 3 hours 443/tcp, 0.0.0.0:9999->80/tcp master
4. 使用murwen/centos-full来调试master容器
$ docker run -it --network=container:3b34ba0685a8 --pid=container:3b34ba0685a8 murwen/centos-full bash
[root@3b34ba0685a8 /]# vi
~ VIM - Vi IMproved
注意单独运行容器时,是下面这样子:
$ docker exec -it 3b34ba0685a8 bash
# vi
/bin/sh: 1: vi: not found
如果k8s中来调试微服务的话,可以参考下面的插件: github.com/aylei/kubec…