【Docker项目实战】使用Docker部署kener监控面板

简介: 【6月更文挑战第8天】使用Docker部署kener监控面板

一、kener介绍

1.1 kener简介

  • kener简介

Kener:开源Node.js状态页面工具,旨在使服务监控和事件处理变得轻而易举。它提供了一个时尚且用户友好的界面,可简化跟踪服务中断并改善我们在事件期间的沟通方式。

1.2 kener特点

  • 实时监测
  • 使用RESTAPI进行民意测验或推送数据以监视
  • 为游客处理闹钟
  • 将监视器分类为不同的部分
  • 监视器的基于数字的时间表。最低每分钟
  • 灵活的监视器配置使用亚姆。定义自己的分析,以便监视器向上/向下/退化
  • 建构复杂的空气污染调查链、机密等
  • 支持监视器的默认状态.如果您没有按状态每分钟点击API,则下降。

1.3 kener使用场景

  • 网站监控:Kener可以用于监控网站的关键事件,如页面加载时间、服务器响应时间等,并通过展示页面和事件监控提供实时数据和警报。

  • 应用程序监控:Kener可以用于监控应用程序中的关键事件,如用户登录、数据更新等,并提供实时的事件监控和数据展示。

  • 服务器监控:Kener可以用于监控服务器的性能指标,如CPU使用率、内存占用等,并提供实时的监控数据和警报。

  • 个人兴趣项目:如果你是一个喜欢折腾的人,Kener可以用来监控你的个人兴趣项目,例如游戏服务器、物联网设备等的运行状态。

二、本地环境介绍

2.1 本地环境规划

本次实践为个人测试环境,操作系统版本为centos7.6。

hostname IP地址 操作系统版本 Docker版本
dokcer 192.168.3.166 centos 7.6 20.10.17

2.2 本次实践介绍

1.本次实践部署环境为个人测试环境,生产环境请谨慎;
2.使用Docker部署kener监控面板。

三、本地环境检查

3.1 检查Docker服务状态

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

[root@jeven ~]# systemctl status docker
● docker.service - Docker Application Container Engine
   Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled)
   Active: active (running) since Thu 2024-04-11 23:12:48 CST; 5 days ago
     Docs: https://docs.docker.com
 Main PID: 11530 (dockerd)
    Tasks: 19
   Memory: 2.7G
   CGroup: /system.slice/docker.service

3.2 检查Docker版本

检查Docker版本

[root@jeven ~]# docker -v
Docker version 20.10.17, build 100c701

3.3 检查docker compose 版本

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

[root@jeven ~]# docker compose version
Docker Compose version v2.6.0

四、下载kener镜像

在docker hub仓库中拉取kener镜像

[root@jeven ~]# docker pull  rajnandan1/kener:latest
latest: Pulling from rajnandan1/kener
46f0b12b7773: Pull complete
2298c655b51e: Pull complete
3a5a7e8dcf09: Pull complete
e1b0b8e10716: Pull complete
4abbc5dc5680: Pull complete
cce3115ab176: Pull complete
6740fc1e6287: Pull complete
669c68c0bc24: Pull complete
f1378cef40d9: Pull complete
4f4fb700ef54: Pull complete
ad630fb474b5: Pull complete
edd9a0f85e8d: Pull complete
2e9eb80453c6: Pull complete
44b781cebb29: Pull complete
6671398befe4: Pull complete
a7b3da71db11: Pull complete
e5c38f5e84c6: Pull complete
8d9f6b60c179: Pull complete
Digest: sha256:66499668ff0a25129eff8f5784c22a32a21557df472d99acf01039bcf7a6a69f
Status: Downloaded newer image for rajnandan1/kener:latest
docker.io/rajnandan1/kener:latest

五、部署kener应用

5.1 创建部署目录

创建部署目录

mkdir -p /data/kener && cd /data/kener

5.2 编辑docker-compose.yml文件

本次实践我们使用docker compose方式部署应用,首先需要再部署目录下编辑docker-compose.yml文件,参考如下:

version: '3.7'
services:
  kener:
    image: rajnandan1/kener:latest # assuming this is final namespace/image
    container_name: kener
    environment:
      - TZ=Asia/Shanghai
      #- GH_TOKEN=
      #- API_TOKEN=
      #- API_IP

      # If running on a LINUX HOST and not podman rootless these MUST BE SET
      # run "id $user" from command line and replace numbers below with output from command
      #- PUID=1000 # gid
      #- PGID=1000 # uid

      ### Most likely DO NOT need to change anything below this ###

      #- PORT=3000 Port app listens on IN CONTAINER

      ### If any of the below are changed make sure the bound volume is correct as well ###
      #- CONFIG_DIR=/config
      #- PUBLIC_KENER_FOLDER=/config/static
      #- MONITOR_YAML_PATH=/config/monitors.yaml
      #- SITE_YAML_PATH=/config/site.yaml

    ports:
      - '3850:3000/tcp'
    volumes:
      - '/data/kener/config:/config:rw'

5.3 创建kener容器

  • 使用docker-compose.yaml文件创建kener容器
    [root@jeven kener]# docker compose up -d
    [+] Running 2/2
    ⠿ Network kener_default  Created                                                                                                   0.1s
    ⠿ Container kener        Started                                                                                                   1.0s
    

5.4 检查kener容器状态

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

[root@jeven kener]# docker compose ps
NAME                COMMAND             SERVICE             STATUS              PORTS
kener               "/init"             kener               running             0.0.0.0:3850->3000/tcp, :::3850->3000/tcp

六、访问kener首页

访问地址:http://192.168.3.166:5925,将IP替换为自己服务器IP地址,进入到kener初始页。如果无法访问,则检查服务器防火墙是否设置,云服务器的安全组端口是否放行等。

在这里插入图片描述

七、kener基本配置

7.1 修改首页

在部署目录/data/kener/config下,可以修改site.yaml文件。

[root@jeven config]# ls
monitors.yaml  site.yaml  static

例如在site.yaml文件中加入以下部分,添加百度网站。

 - name: "百度"
   url: "https://www.baidu.com"

在这里插入图片描述

7.2 修改监控项

在部署目录/data/kener/config下,可以修改monitors.yaml文件,配置监控信息。

[root@jeven config]# ls
monitors.yaml  site.yaml  static

例如,我们想要监控必应网站的访问情况,可以在monitors.yaml中文件中添加以下内容。

- name: 必应
  description: Bing
  tag: "search"
  defaultStatus: "UP"
  image: "/earth.png"
  api:
    method: GET
    url: https://cn.bing.com/

在这里插入图片描述

7.3 查看页面效果

重启容器

docker compose restart

在浏览器刷新页面,查看访问效果。

在这里插入图片描述
在这里插入图片描述

八、总结

Kener是一款轻量级的网站监控工具,它的部署简单,页面美观简洁,响应速度快,监控准确。即使是新手也可以轻松操作。我们可以自定义添加监控站点和网址链接,非常方便日常使用。如果你需要一款轻量级的网站监控工具,不妨体验下Kener。

相关文章
|
26天前
|
消息中间件 监控 RocketMQ
Docker部署RocketMQ5.2.0集群
本文详细介绍了如何使用Docker和Docker Compose部署RocketMQ 5.2.0集群。通过创建配置文件、启动集群和验证容器状态,您可以快速搭建起一个RocketMQ集群环境。希望本文能够帮助您更好地理解和应用RocketMQ,提高消息中间件的部署和管理效率。
221 91
|
27天前
|
存储 NoSQL Redis
Docker 部署 Redis
在使用 Docker 部署 Redis 时,为实现数据持久化,需正确挂载容器内的数据目录到宿主机。推荐命令如下: ``` docker run -d --name redis -v /mnt/data/redis:/data -p 6379:6379 redis ``` 该命令将宿主机的 `/mnt/data/redis` 目录挂载到容器的 `/data` 目录,确保 Redis 数据持久化。此路径更通用,适合大多数场景。避免使用不匹配的挂载路径,如 `/var/lib/redis` 或 `/mnt/data/redis` 到非默认目录,以防止数据无法正确持久化。
|
2月前
|
存储 关系型数据库 MySQL
美团面试:MySQL为什么 不用 Docker部署?
45岁老架构师尼恩在读者交流群中分享了关于“MySQL为什么不推荐使用Docker部署”的深入分析。通过系统化的梳理,尼恩帮助读者理解为何大型MySQL数据库通常不使用Docker部署,主要涉及性能、管理复杂度和稳定性等方面的考量。文章详细解释了有状态容器的特点、Docker的资源隔离问题以及磁盘IO性能损耗,并提供了小型MySQL使用Docker的最佳实践。此外,尼恩还介绍了Share Nothing架构的优势及其应用场景,强调了配置管理和数据持久化的挑战。最后,尼恩建议读者参考《尼恩Java面试宝典PDF》以提升技术能力,更好地应对面试中的难题。
|
17天前
|
人工智能 文字识别 安全
Stirling-PDF:51.4K Star!用Docker部署私有PDF工作站,支持50多种PDF操作,从此告别在线工具
Stirling-PDF 是一款基于 Docker 的本地化 PDF 编辑工具,支持 50 多种 PDF 操作,包括合并、拆分、转换、压缩等,同时提供多语言支持和企业级功能,满足个人和企业用户的多样化需求。
72 6
Stirling-PDF:51.4K Star!用Docker部署私有PDF工作站,支持50多种PDF操作,从此告别在线工具
|
1月前
|
JavaScript 前端开发 Docker
如何通过pm2以cluster模式多进程部署next.js(包括docker下的部署)
通过这些步骤,可以确保您的Next.js应用在多核服务器上高效运行,并且在Docker环境中实现高效的容器化管理。
144 44
|
14天前
|
中间件 关系型数据库 数据库
docker快速部署OS web中间件 数据库 编程应用
通过Docker,可以轻松地部署操作系统、Web中间件、数据库和编程应用。本文详细介绍了使用Docker部署这些组件的基本步骤和命令,展示了如何通过Docker Compose编排多容器应用。希望本文能帮助开发者更高效地使用Docker进行应用部署和管理。
45 19
|
6天前
|
Linux 虚拟化 Docker
Linux服务器部署docker windows
在当今软件开发中,Docker成为流行的虚拟化技术,支持在Linux服务器上运行Windows容器。流程包括:1) 安装Docker;2) 配置支持Windows容器;3) 获取Windows镜像;4) 运行Windows容器;5) 验证容器状态。通过这些步骤,你可以在Linux环境中顺利部署和管理Windows应用,提高开发和运维效率。
47 1
|
19天前
|
运维 数据可视化 开发者
Dpanel:Star2k,短短时间就被大家称为GitHub开源神器!轻量化Docker面板,还在等什么
如今的软件开发和运维领域,Docker容器技术已经成为一种主流的解决方案,它允许开发者和系统管理员以更高效、更灵活的方式部署和管理应用程序。然而,Docker的命令行界面虽然强大,但对于某些用户来说可能不够直观。今天,我们要介绍的开源项目——dpanel,就是一个轻量化的Docker可视化管理面板,它以其简洁、高效的特点,为用户提供了一个易于操作的界面来管理Docker容器和镜像。
|
2月前
|
数据库 Docker 容器
docker容器为啥会开机自启动
通过配置适当的重启策略,Docker容器可以在主机系统重启后自动启动。这对于保持关键服务的高可用性和自动恢复能力非常有用。选择适合的重启策略(如 `always`或 `unless-stopped`),可以确保应用程序在各种情况下保持运行。理解并配置这些策略是确保Docker容器化应用可靠性的关键。
282 93
|
27天前
|
网络协议 API Docker
Docker+consul容器服务的更新与发现
通过本文的介绍,我们详细探讨了如何结合Docker和Consul来实现容器服务的更新与发现。通过Consul的服务注册和发现功能,可以高效地管理和监控容器化服务,确保系统的高可用性和可扩展性。希望本文能帮助您在实际项目中更好地应用Docker和Consul,提高系统的可靠性和管理效率。
64 23