多功能web终端面板EasyNode

本文软件由网友 Q 推荐

简介

什么是 EasyNode ?

EasyNode 是一个多功能的 Linux 服务器 Web 终端面板,提供 webSSHwebSFTP 功能。它旨在简化服务器管理和监控,使用户能够高效地管理和操作远程服务器。

相比老苏之前介绍的 Next TerminalNexus Terminal 这些基于 guacd 的产品,EasyNode 不支持 RDPVNC,所以比较适合管理 Linux 服务器

主要特点

  • 多功能终端:提供强大的 SSH 终端和 SFTP 功能,支持远程文件传输与管理。
  • AI 对话组件:集成 AI 聊天功能,支持与终端的互动,提高操作效率。
  • 批量管理:支持批量导入、导出及编辑服务器配置和脚本,方便大规模管理。
  • 凭据托管:安全地管理和存储服务器的访问凭据。
  • 多渠道通知:通过多种方式发送服务器状态和事件通知。
  • 自定义主题:用户可以自定义终端的外观主题。
  • 实时监控:安装监控服务,实时推送系统状态信息,如 CPU、内存和硬盘使用情况。

应用场景

  • 服务器管理:适合系统管理员和开发者用于管理多台 Linux 服务器。
  • 项目部署:用于快速部署和管理应用程序和服务。
  • 运维监控:适合需要实时监控服务器性能和健康状态的用户。
  • 教育与培训:用于教学和培训,帮助学生学习服务器操作和管理。

EasyNode 通过集成多种功能,提供了一个全面的解决方案,旨在提升 Linux 服务器的管理效率和用户体验。

安装

在群晖上以 Docker 方式安装。

在注册表中搜索 easynode ,选择第一个 chaoszhu/easynode,版本选择 latest

本文写作时, latest 版本对应为 v3.0.7

docker 文件夹中,创建一个新文件夹 easynode,并在其中建一个子文件夹 data

文件夹 装载路径 说明
docker/easynode/data /easynode/app/db 存放数据库和日志文件等

端口

本地端口不冲突就行,不确定的话可以用命令查一下

1
2
# 查看端口占用
netstat -tunlp | grep 端口号
本地端口 容器端口
8082 8082

环境

可变
TZ 时区设置,设为 Asia/Shanghai
DEBUG 启动 debug日志。 0:关闭 1:开启, 默认关闭

命令行安装

如果你熟悉命令行,可能用 docker cli 更快捷

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# 新建文件夹 easynode 和 子目录
mkdir -p /volume1/docker/easynode/data

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

# 运行容器
docker run -d \
--restart unless-stopped \
--name easynode \
-p 8082:8082 \
-v $(pwd)/data:/easynode/app/db \
-e TZ=Asia/Shanghai \
-e DEBUG=0 \
chaoszhu/easynode

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

支持通过 watchtower 按照指定的时间表定期检查和更新容器

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
version: '3'

services:
easynode:
image: chaoszhu/easynode
container_name: easynode
restart: always
ports:
- 8082:8082
volumes:
- ./data:/easynode/app/db
environment:
- TZ=Asia/Shanghai
- DEBUG=0
labels:
- "com.centurylinklabs.watchtower.enable=true"

watchtower:
image: containrrr/watchtower
container_name: watchtower
restart: always
volumes:
- /var/run/docker.sock:/var/run/docker.sock
environment:
- TZ=Asia/Shanghai
command: --schedule "0 8 * * *" --label-enable
  • **labels**:用于为服务添加元数据,帮助管理和识别容器
  • **command**:定义容器启动时要执行的命令,允许自定义容器的行为
    • **--schedule "0 8 * * *"**:使用 Cron 表达式设置计划。这个表达式表示每天的早上 8 点执行检查。
    • **--label-enable**:指示 Watchtower 只更新那些带有特定标签的容器,而不是所有容器。

然后执行下面的命令

1
2
3
4
5
6
7
8
9
10
# 新建文件夹 easynode 和 子目录
mkdir -p /volume1/docker/easynode/data

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

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

# 一键启动
docker-compose up -d

运行

在浏览器中输入 http://群晖IP:8082 就能看到登录界面

默认账户密码 admin/admin

登录成功后的主界面

【重要】:记得修改默认的密码,如果有必要,可以启用 MFA2

添加实例

不过跳板机需要开通 plus 功能才行,AI 功能也一样

添加成功后,可以直接连接

如果设置没问题,直接就可以使用了

想要获取到 CPU、内存、硬盘、网卡等基础信息,还需要通过脚本库安装监控服务

不过看起来跟群晖并不兼容

通知支持三种方式

老苏试了下 Server酱

通知的事件是可以根据需要选择的

参考文档

chaos-zhu/easynode: 一个多功能Linux服务器WEB终端面板(webSSH&webSFTP). 更新通知TG:
地址:https://github.com/chaos-zhu/easynode