Linux如何根据一个服务端口查询是二进制还是Docker容器安装
Linux如何根据一个服务端口查询是二进制还是Docker容器安装
查询xxl-job这个服务18081端口,到底是Docker安装还是二进制安装

找到端口对应的PID进程
进程号为:3741107
# netstat -lntup |grep 18081
tcp        0      0 0.0.0.0:18081           0.0.0.0:*               LISTEN      3741107/java  
根据PID查询是否为容器进程
有输出就是Docker或者K8s容器进程,无输出则不是。输出内容中5ce569ba96c33fdfc2fc1639b001229c534991cf3bf8bcdabc3c8c684d79b8d4即是容器ID
```shell
# grep -E 'docker|containerd|kubepods' /proc/3741107/cgroup
12:pids:/docker/5ce569ba96c33fdfc2fc1639b001229c534991cf3bf8bcdabc3c8c684d79b8d4
10:perf_event:/docker/5ce569ba96c33fdfc2fc1639b001229c534991cf3bf8bcdabc3c8c684d79b8d4
9:net_cls,net_prio:/docker/5ce569ba96c33fdfc2fc1639b001229c534991cf3bf8bcdabc3c8c684d79b8d4
8:memory:/docker/5ce569ba96c33fdfc2fc1639b001229c534991cf3bf8bcdabc3c8c684d79b8d4
7:hugetlb:/docker/5ce569ba96c33fdfc2fc1639b001229c534991cf3bf8bcdabc3c8c684d79b8d4
6:devices:/docker/5ce569ba96c33fdfc2fc1639b001229c534991cf3bf8bcdabc3c8c684d79b8d4
5:freezer:/docker/5ce569ba96c33fdfc2fc1639b001229c534991cf3bf8bcdabc3c8c684d79b8d4
4:blkio:/docker/5ce569ba96c33fdfc2fc1639b001229c534991cf3bf8bcdabc3c8c684d79b8d4
3:cpuset:/docker/5ce569ba96c33fdfc2fc1639b001229c534991cf3bf8bcdabc3c8c684d79b8d4
2:cpu,cpuacct:/docker/5ce569ba96c33fdfc2fc1639b001229c534991cf3bf8bcdabc3c8c684d79b8d4
1:name=systemd:/docker/5ce569ba96c33fdfc2fc1639b001229c534991cf3bf8bcdabc3c8c684d79b8d4
根据容器ID查询对应哪个容器服务
# docker ps |grep 5ce569b
5ce569ba96c3        gosuncn/java-8:arm64v8-v1.8.1               "/gosuncn/shell/star…"   7 weeks ago         Up 10 days                                                                                                                                                      job-pym
查询容器ID配置配置(元数据)
# docker inspect 5ce569ba96c3 |grep -A 3 Binds
