Docker应用端口查看器docker-port-viewer

简介

什么是 Docker Port Viewer ?

Docker Port Viewer 是一个现代的 web 应用程序,旨在查看并与 Docker 容器的端口互动。它使用 TypeScriptReactMaterial-UI 构建,提供用户友好的界面来管理和访问 Docker 容器。

主要特点

  1. 查看运行中的 Docker 容器
    • 显示所有正在运行的 Docker 容器及其暴露的端口。
  2. 搜索功能
    • 允许根据容器名称搜索容器。
  3. 排序选项
    • 可以按名称或创建日期对容器进行排序。
  4. 容器详细信息
    • 提供容器名称、镜像名称、状态、启动时间和暴露的端口等信息。
  5. 直接访问容器的 web 界面
    • 通过内置的 iframe 查看器或新标签选项进行访问。
    • 支持可自定义的主机名来访问容器。
  6. 安全集成
    • 使用 Docker socket 代理(如 tecnativa/docker-socket-proxy)确保安全访问 Docker API,限制操作权限。
  7. 响应式设计
    • 采用 Material-UI 设计,适配各种设备。

应用场合

  • 开发环境 :开发人员可以使用此工具快速查看和管理本地 Docker 容器。
  • 测试:在测试阶段,方便地访问和监控运行的服务。
  • 教育与培训 :作为学习 Docker 和容器管理的工具,帮助用户理解容器的工作原理。
  • 生产监控:在生产环境中,提供对运行容器的可视化管理,便于运维人员快速响应问题。

Docker Port Viewer 是一个非常实用的工具,适用于需要管理多个 Docker 容器的场景。

安装

在群晖上以 Docker 方式安装。

采用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件

yaml 复制代码
services:
  # Docker socket proxy for security
  docker-socket:
    image: tecnativa/docker-socket-proxy
    container_name: docker-socket-proxy
    environment:
      - CONTAINERS=1
      - POST=0
      - PUT=0
      - DELETE=0
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock:ro

  # Main application
  docker-port-viewer:
    image: hollowpnt/docker-port-viewer:latest
    container_name: docker-port-viewer
    ports:
      - "3003:80"

关于环境变量的简单说明

可变
CONTAINERS 设为 1,表示仅允许容器列表
POST 设为 0, 表示禁用 POST 操作
PUT 设为 0,表示禁用 PUT 操作
DELETE 设为 0, 表示禁用 DELETE 操作

然后执行下面的命令

bash 复制代码
# 新建文件夹 dpv 
mkdir -p /volume1/docker/dpv

# 进入 dpv 目录
cd /volume1/docker/dpv

# 将 docker-compose.yml 放入当前目录

# 一键启动
docker-compose up -d

运行

在浏览器中输入 http://群晖IP:3003 就能看到主界面

需要将 Hostnamelocalhost 改为主机的 IP

否则访问链接会空白打不开

支持按容器名称进行搜索

参考文档

hollowpnt92/docker-port-viewer

地址:https://github.com/hollowpnt92/docker-port-viewer
Docker Port Viewer v0.1 - self hosted front end for Docker-Socket-Proxy : r/selfhosted

地址:https://www.reddit.com/r/selfhosted/comments/1jwudrx/docker_port_viewer_v01_self_hosted_front_end_for/

相关推荐
belldeep2 小时前
WSL 安装 Debian 12 后,Linux 如何安装 curl , quickjs ?
linux·运维·debian·curl·quickjs
l1t2 小时前
Debian上安装PostgreSQL的故障和排除
运维·postgresql·debian
无效的名字5 小时前
如何安装并使用RustDesk
linux·运维·服务器
大数据007 小时前
Docker慢慢学
mysql·docker·kafka·n8n
唐可盐7 小时前
解决docker运行zentao 报错:ln: failed to create symbolic link ‘/opt/zbox/tmp/mysq
运维·docker·容器
明金同学8 小时前
电脑wifi显示已禁用怎么点都无法启用
运维·服务器·网络
秋水丶秋水8 小时前
GlobalSign、DigiCert、Sectigo三种SSL安全证书有什么区别?
运维·服务器·网络
TDengine (老段)9 小时前
TDengine 集群容错与灾备
大数据·运维·数据库·oracle·时序数据库·tdengine·涛思数据
优质&青年10 小时前
Devops自动化运维---py基础篇一
运维·自动化
Lao A(zhou liang)的菜园10 小时前
高效DBA的日常运维主题沙龙
运维·数据库·dba