不再死记IP 告别端口地狱 D:ockpeek让你一键直达68%Docker“服务”
湖南新闻网  发布时间:2025-07-21 23:22:39   

本内容来源于@什么值得买APP,观点仅代表作者本人|作者:羊刀仙

如果你在使用Docker,一定遇到过这种场景:部署了好几个容器,想访问某个不是太常用的服务,却要dockerps或打开控制台,翻翻端口映射,甚至还要记住容器在哪台机器上。

对于开发者、运维,或者爱折腾的玩家来说,这简直是日常的痛点。好消息是,有一个轻量、零配置、实用的工具能帮你解决这个问题,它就是——Dockpeek。

像我这台TS-464C的测试机,部署Docekr久不久就来次失败,一看日志大多是端口用掉了。

Dockpeek

这是一款简单轻量的Docker端口显示工具,除了列出所有项目占用外,还支持搜索框直接搜,更主要的是他支持接入多主机。跟lsof-i:说再见~

大概的展示如下所示。

主要特点:

端口映射概览——快速查看所有正在运行的容器及其暴露的端口。

点击访问URL–只需单击即可立即打开容器化的Web应用程序。

多主机支持——在一个仪表板内管理多个Docker主机和套接字。

零配置——自动检测正在运行的容器,无需设置。

部署流程

先行操作

这部分是针对多设备用户,要在你的2,3,4等设备上进行操作。

需要在子设备上,打开/etc/docker/daemon.json文件,添加额外配置:

{"hosts":["unix:///var/run/docker.sock","tcp://0.0.0.0:2375"]}

0.0.0.0表示监听所有,可替换对应设备的具体IP地址。2375是Docker官方默认设定的远程访问端口。

/var/run/docker.sock是一个Unix域套接字(Unixdomainsocket)文件,用于本地进程之间通信。它是Docker守护进程(dockerd)提供的默认API接口,允许客户端(比如docker命令行)与守护进程通信。

开始部署

使用威联通NAS作为部署平台,以DockerCompose的方式进行部署。多设备用户先别急复制代码部署,还有额外的操作需要执行。

直接本机监控,代码如下:

services:dockpeek:image:ghcr.io/dockpeek/dockpeek:latestcontainer_name:dockpeekenvironment:-SECRET_KEY=my_secret_key#可借助工具生成-USERNAME=admin#面板账户,自定义-PASSWORD=admin#面板密码,自定义ports:-"3420:8000"#左侧端口自行更改volumes:-/var/run/docker.sock:/var/run/docker.sockrestart:unless-stopped

多主机,变量解释见下文:

services:dockpeek:image:ghcr.io/dockpeek/dockpeek:latestcontainer_name:dockpeekports:-"3420:8000"volumes:-/var/run/docker.sock:/var/run/docker.sockrestart:unless-stoppedenvironment:-SECRET_KEY=my_secret_key-USERNAME=admin-PASSWORD=admin#DockerHost1-DOCKER_HOST_1_URL=unix:///var/run/docker.sock-DOCKER_HOST_1_NAME=TS-464C-DOCKER_HOST_1_PUBLIC_HOSTNAME=NAS#DockerHost2-DOCKER_HOST_2_URL=tcp://192.168.50.20:2375-DOCKER_HOST_2_NAME=TS-673A-DOCKER_HOST_2_PUBLIC_HOSTNAME=NAS

使用socket-proxy(推荐用于远程或多主机设置):

services:dockpeek:image:ghcr.io/dockpeek/dockpeek:latestcontainer_name:dockpeekenvironment:-SECRET_KEY=my_secret_key-USERNAME=admin-PASSWORD=admin-DOCKER_HOST=tcp://dockpeek-socket-proxy:2375#主Docker套接字的URL,如果省略,则默认为本地套接字。建议与本地代理一起使用ports:-"3420:8000"depends_on:-dockpeek-socket-proxyrestart:unless-stoppeddockpeek-socket-proxy:image:lscr.io/linuxserver/socket-proxy:latestcontainer_name:dockpeek-socket-proxyenvironment:-CONTAINERS=1-IMAGES=1-PING=1-VERSION=1-LOG_LEVEL=infovolumes:-/var/run/docker.sock:/var/run/docker.sock:roread_only:truetmpfs:-/runports:-"2375:2375"restart:unless-stopped

添加其他主机:

environment:-SECRET_KEY=my_secret_key-USERNAME=admin-PASSWORD=admin#可选:通过设置这些变量来添加额外的Docker主机#每个主机都需要DOCKER_HOST_N_URL、DOCKER_HOST_N_NAME以及可选的DOCKER_HOST_N_PUBLIC_HOSTNAME#DockerHost1-DOCKER_HOST_1_URL=unix:///var/run/docker.sock#Docker套接字URL-DOCKER_HOST_1_NAME=MyServer1#用户界面中显示的名称-DOCKER_HOST_1_PUBLIC_HOSTNAME=#可选的链接公共主机名或IP;如果为空,则从URL推断#DockerHost2-DOCKER_HOST_2_URL=tcp://192.168.50.20:2375#Docker代理URL-DOCKER_HOST_2_NAME=TS-673A#用户界面中显示的名称-DOCKER_HOST_2_PUBLIC_HOSTNAME=NAS#可选的公共主机名或IP#通过增加数量(3、4等)添加更多Docker主机

使用展示

部署完毕后,浏览器输入NAS_IP:3420即可访问服务。初始面板如下。

确实是极简,默认显示所有设备端口。顶部有做设备区分。项目名/所属设备、端口/转发端口及协议、镜像名、容器状态都罗列的很清楚。

可通过搜索框进行搜索,响应很灵敏。

点击蓝色的端口,可直接打开服务。这里要说明的是,想要实现该效果需要我们填写环境变量DOCKER_HOST_N_PUBLIC_HOSTNAME的变量,按需求填写局域网IP、公网IP或是解析好的域名。

总结

简单直白易用,支持多设备接入,个人认为是比较不错的项目。

感谢观看,本文完~

  [环球时报特约记者 任重]英国政府当地时间13日以“打击普京的战争机器”为由宣布50项新制裁,对象包括5家中国实体。中国驻英国使馆发言人当天回应说,英国政府罔顾国内国际民意,不断火上浇油,不但没有反思自己的恶劣行径,反而罗织罪名制裁中国及其他国家企业,充分暴露了英方的虚伪嘴脸。中方敦促英方立即纠正错误,撤销对中国企业的制裁。

延伸阅读:与 不再死记IP 告别端口地狱 D:ockpeek让你一键直达68%Docker“服务” 的相关文章
美国型钻地弹仅次于核武器
评论圈智搜分享大赛
现在就出发
千万别买到青岛西
白血病女孩报销百万抗癌药费
以色列要求全境民众进避难所
美国型钻地弹仅次于核武器
单依纯守榜
陈楚生摇滚
大学生感染情况

(原标题:不再死记IP, 告别端口地狱, Dockpeek让你一键直达Docker服务)
来源:湖南新闻网  作者:屈梦兰  编辑:许其凯
返回
临沂车夫物流有限公司