【Docker项目实战】使用Docker部署WatchYourPorts端口状态监控服务

举报
江湖有缘 发表于 2024/12/24 14:38:30 2024/12/24
【摘要】 【Docker项目实战】使用Docker部署WatchYourPorts端口状态监控服务

@TOC

一、 WatchYourPorts介绍

1.1 WatchYourPorts 简介

WatchYourPorts 是一款专为系统管理员和开发人员设计的轻量级工具,旨在帮助用户轻松监控本地服务器上的端口状态。通过定期检查指定端口的状态(如开放、关闭或被占用),该工具能够提供实时的端口使用情况报告,并支持将这些数据导出到流行的时序数据库InfluxDB2中。结合Grafana强大的可视化能力,用户可以创建直观的仪表盘来跟踪和分析端口活动趋势,从而更好地管理网络资源和服务可用性。

1.2 WatchYourPorts主要特点

  • 易于部署与配置:拥有简洁明了的安装步骤及配置选项,即便是对于初次接触此类工具的新手也能快速上手。
  • 跨平台兼容性:支持多种操作系统环境,包括但不限于Linux、Windows以及macOS,确保广泛的适用范围。
  • 实时监控:能够以设定的时间间隔自动检测指定端口的状态变化,保证信息更新及时准确。
  • 灵活的数据导出:内置对InfluxDB2的支持,允许用户无缝地将收集到的端口状态数据传输至外部数据库存储,便于长期记录和分析。
  • 可视化友好:与Grafana集成良好,利用其丰富的图表类型和自定义面板功能,让复杂的端口状态数据变得一目了然。
  • 告警通知机制:支持设置条件触发器,在特定情况下(例如端口异常关闭)向用户发送即时警告,帮助快速响应潜在问题。
  • 开源免费:作为一款开源软件,WatchYourPorts鼓励社区贡献代码改进功能,同时也意味着用户无需支付额外费用即可享受全部特性。

二、本次实践规划

2.1 本地环境规划

本次实践为个人测试环境,操作系统版本为|Ubuntu 22.04.1。

hostname IP地址 操作系统版本 Docker版本 镜像名称 备注
jeven01 192.168.3.88 Ubuntu 22.04.1 LTS 27.1.1 docker.io/aceberg/watchyourports:latest ——

2.2 本次实践介绍

1.本次实践部署环境为个人测试环境,生产环境请谨慎;
2.在Docker环境下部署HomeBox家庭库存管理系统。

三、本地环境检查

3.1 检查Docker服务状态

检查Docker服务是否正常运行,确保Docker正常运行。

root@jeven01:~# systemctl status docker
● docker.service - Docker Application Container Engine
     Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
     Active: active (running) since Fri 2024-11-01 00:45:50 CST; 3 weeks 0 days ago
       Docs: https://docs.docker.com
   Main PID: 10450 (dockerd)
      Tasks: 150 (limit: 9387)
     Memory: 3.4G
        CPU: 46min 54.584s
     CGroup: /system.slice/docker.service
             ├─10450 /usr/bin/dockerd
             ├─10459 containerd --config /var/run/docker/containerd/containerd.toml

3.2 检查Docker版本

检查Docker版本

root@jeven01:~# docker -v
Docker version 27.1.1, build 6312585

3.3 检查docker compose 版本

检查Docker compose版本,确保2.0以上版本。

root@jeven01:~# docker compose version
Docker Compose version v2.19.1

四、下载WatchYourPorts镜像

执行以下命令,拉取以下WatchYourPorts镜像。

root@jeven01:~# docker pull aceberg/watchyourports
Using default tag: latest
latest: Pulling from aceberg/watchyourports
42e53158c794: Pull complete
5a43cd2e29e8: Pull complete
2cf4881216d0: Pull complete
Digest: sha256:fea1667950710ae9cb4ce9a68156dde1ff4b53438d17dbda774925881a0f12ff
Status: Downloaded newer image for aceberg/watchyourports:latest
docker.io/aceberg/watchyourports:latest

五、部署WatchYourPorts应用

5.1 创建部署目录

  • 创建部署目录
mkdir -p /data/watchyourports && cd  /data/watchyourports

5.2 docker-cli方式部署(可选)

可使用以下docker-cli方式,快速部署WatchYourPorts应用。

docker run -d \
   --restart always  \
   --name wyp \
   -p 7600:8853 \
   -v /data/watchyourports/data:/data/WatchYourPorts \
   -e TZ=Asia/Shanghai \
   aceberg/watchyourports




5.3 编辑部署文件

本次实践使用docker compose方式部署,在部署目录下,创建docker-compose.yaml文件,其中宿主机映射端口等可以自定义配置。

vim docker-compose.yaml
version: '3.9'
services:
    watchyourports:
        image: aceberg/watchyourports
        environment:
            - TZ=Asia/Shanghai
        volumes:
            - '/data/watchyourports/data:/data/WatchYourPorts'
        ports:
            - '7600:8853'
        container_name: wyp
        restart: always

     

5.4 创建WatchYourPorts容器

执行以下命令,创建WatchYourPorts容器。

root@jeven01:/data/watchyourports# docker compose up -d
[+] Running 2/2
 ✔ Network watchyourports_default  Created                                                                          0.2s
 ✔ Container wyp                   Started                                                                          0.3s

5.5 查看WatchYourPorts容器状态

检查WatchYourPorts容器状态状态,确保WatchYourPorts容器正常启动。

root@jeven01:/data/watchyourports#  docker compose ps
NAME                IMAGE                    COMMAND              SERVICE             CREATED             STATUS     PORTS
wyp                 aceberg/watchyourports   "./WatchYourPorts"   watchyourports      49 seconds ago      Up 49 seconds     0.0.0.0:7600->8853/tcp, :::7600->8853/tcp

5.6 检查WatchYourPorts容器日志

检查WatchYourPorts容器日志,确保WatchYourPortsx服务正常运行。

root@jeven01:/data/watchyourports# docker compose logs
wyp  | 2024/11/29 19:10:07 INFO config path=/data/WatchYourPorts
wyp  | 2024/11/29 19:10:07 ERROR open /data/WatchYourPorts/hosts.yaml: no such file or directory
wyp  | 2024/11/29 19:10:07 INFO ===================================
wyp  | 2024/11/29 19:10:07 INFO Web GUI at http://0.0.0.0:8853
wyp  | 2024/11/29 19:10:07 INFO ===================================
wyp  | 2024/11/29 19:10:07 INFO port scan started
wyp  | 2024/11/29 19:10:07 INFO port scan done!

在这里插入图片描述

六、访问WatchYourPorts服务

访问地址:http://192.168.3.88:7600,将IP替换为自己服务器IP地址。如果无法访问到以下页面,则检查宿主机的防火墙是否关闭或者放行相关端口,云服务器则还需要设置安全组规则。

在这里插入图片描述

七、WatchYourPorts的基本使用

7.1 添加服务器

在WatchYourPorts主页,输入服务器名称和IP地址,再点击“Add”,确认添加该服务器。

在这里插入图片描述

在这里插入图片描述

7.2 扫描端口

点击刚才添加服务器名称后,选择“Scan”进行端口扫描。

在这里插入图片描述

默认是 的端口范围是1~65535,需要的时间会比较长,我们可以自定义修改扫描的端口范围。

在这里插入图片描述

端口扫描完毕后,我们点击保存选项。

在这里插入图片描述

在这里插入图片描述

八、总结

通过Docker部署WatchYourPorts端口状态监控服务,不仅简化了安装和配置流程,还确保了在不同环境下的稳定运行。实际使用中,WatchYourPorts提供了实时而准确的端口状态信息,让用户能够即时掌握服务器上各端口的动态。结合InfluxDB2的数据存储能力和Grafana的可视化展示,用户可以轻松创建出直观易懂的监控仪表盘,极大地提升了对网络资源管理的效率与精度。整体而言,这一实战项目为系统管理员提供了一个强大且易于使用的工具集,以实现更高效的服务管理和故障排查。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。