Docker环境下部署Nexus Terminal:打造专属的高颜值SSH工作站

2025-08-11 23:36:49 3点赞 12收藏 0评论

Docker环境下部署Nexus Terminal:打造专属的高颜值SSH工作站

一、Nexus Terminal介绍

1.1 Nexus Terminal简介

Nexus Terminal 是一款现代化的 Web SSH / RDP / VNC 客户端,提供独立桌面端应用,集成了高级安全机制与丰富的用户功能,适用于开发者、运维人员及企业团队,实现高效、安全的远程连接与管理。

1.2 Nexus Terminal主要特点

  1. 多标签页管理 SSH 与 SFTP 连接
    支持多个远程连接在同一界面中以标签页形式并行操作,提升工作效率。

  2. 支持 RDP/VNC 协议
    内建对 Windows 远程桌面和 VNC 的支持,满足多样化远程控制需求。

  3. 支持 PWA(渐进式 Web 应用)
    可安装为类原生应用,离线使用并具备推送通知等现代 Web 特性。

  4. 采用 Monaco Editor,在线编辑文件
    提供类似 VS Code 的代码编辑体验,支持语法高亮与智能补全。

  5. 集成多重登录安全机制,包括人机验证与双因素认证(2FA)
    增强账户安全,防止自动化攻击和未授权访问。

  6. 高度可定制的界面主题与布局风格
    用户可根据个人喜好自定义外观与界面布局,提升使用舒适度。

  7. 内置简易 Docker 容器管理面板
    快速查看和管理本地或远程服务器上的容器服务,简化 DevOps 流程。

  8. 支持 IP 白名单与黑名单,异常访问自动封禁
    提供网络层安全防护,阻止非法 IP 接入并自动防御暴力破解。

  9. 通知系统(如登录提醒、异常告警)
    实时推送关键事件通知,帮助用户掌握账户动态与系统状态。

  10. 审计日志,全面记录用户行为与系统变更
    所有操作均有详细日志追踪,便于合规审查与问题回溯。

  11. 基于 Node.js 的轻量级后端,资源占用低
    高性能且低开销的后端架构,易于部署和维护。

  12. 内置心跳保活机制,确保连接稳定
    自动检测并维持连接活跃状态,避免因超时断开影响工作。

二、本次实践规划

2.1 本地环境规划

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

hostname IP地址 操作系统版本 Docker版本 部署项目 jeven01 192.168.3.88 Ubuntu 22.04.1 LTS 27.1.1 Nexus Terminal

2.2 本次实践介绍

1.本次实践部署环境为个人测试环境,生产环境请谨慎; 2.在Docker环境下部署Nexus Terminal高颜值SSH客户端工具。

三、本地环境检查

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 Wed 2025-06-11 12:57:12 UTC; 1 week 0 days ago TriggeredBy: ● docker.socket        Docs: https://docs.docker.com    Main PID: 848 (dockerd)       Tasks: 83      Memory: 3.2G         CPU: 29min 49.224s      CGroup: /system.slice/docker.service              ├─   848 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock

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

四、拉取Nexus Terminal镜像

拉取Nexus Terminal相关容器镜像,如下所示:

docker pull heavrnl/nexus-terminal-frontend:latest docker pull heavrnl/nexus-terminal-backend:latest docker pull heavrnl/nexus-terminal-remote-gateway:latest docker pull guacamole/guacd:latestDocker环境下部署Nexus Terminal:打造专属的高颜值SSH工作站

五、部署Nexus Terminal容器

5.1 创建部署目录

  • 创建部署目录

mkdir -p /data/nexus-terminal &&  cd /data/nexus-terminal

5.2 编辑部署文件

在`部署目录下,创建docker-compose.yaml文件,如下所示:

vim docker-compose.yaml

services:   frontend:     image: heavrnl/nexus-terminal-frontend:latest     container_name: nexus-terminal-frontend     ports:       - "18111:80"     depends_on:       - backend       - remote-gateway   backend:     image: heavrnl/nexus-terminal-backend:latest     container_name: nexus-terminal-backend     volumes:       - ./data:/app/data     environment:       NODE_ENV: production       PORT: 3001       DEPLOYMENT_MODE: docker   # local/docker       REMOTE_GATEWAY_API_BASE_LOCAL: http://192.168.0.197:9090       REMOTE_GATEWAY_API_BASE_DOCKER: http://remote-gateway:9090       REMOTE_GATEWAY_WS_URL_LOCAL: ws://192.168.0.197:8080       REMOTE_GATEWAY_WS_URL_DOCKER: ws://remote-gateway:8080       # passkey       RP_ID: "192.168.0.197"       RP_ORIGIN: "http://192.168.0.197:18111"   remote-gateway:     image: heavrnl/nexus-terminal-remote-gateway:latest     container_name: nexus-terminal-remote-gateway     environment:       GUACD_HOST: guacd       GUACD_PORT: 4822       REMOTE_GATEWAY_API_PORT: 9090       REMOTE_GATEWAY_WS_PORT: 8080       FRONTEND_URL: http://frontend       MAIN_BACKEND_URL: http://backend:3001       NODE_ENV: production     depends_on:       - guacd       - backend   guacd:     image: guacamole/guacd:latest     container_name: nexus-terminal-guacd     restart: unless-stopped root@jeven01:/data/nexus-terminal# root@jeven01:/data/nexus-terminal# vim docker-compose.yaml root@jeven01:/data/nexus-terminal# cat docker-compose.yaml services:   frontend:     image: heavrnl/nexus-terminal-frontend:latest     container_name: nexus-terminal-frontend     ports:       - "18111:80"     depends_on:       - backend       - remote-gateway   backend:     image: heavrnl/nexus-terminal-backend:latest     container_name: nexus-terminal-backend     volumes:       - ./data:/app/data     environment:       NODE_ENV: production       PORT: 3001       DEPLOYMENT_MODE: docker   # local/docker       REMOTE_GATEWAY_API_BASE_LOCAL: http://192.168.3.88:9090       REMOTE_GATEWAY_API_BASE_DOCKER: http://remote-gateway:9090       REMOTE_GATEWAY_WS_URL_LOCAL: ws://192.168.3.88:8080       REMOTE_GATEWAY_WS_URL_DOCKER: ws://remote-gateway:8080       # passkey       RP_ID: "192.168.3.88"       RP_ORIGIN: "http://192.168.3.88:18111"   remote-gateway:     image: heavrnl/nexus-terminal-remote-gateway:latest     container_name: nexus-terminal-remote-gateway     environment:       GUACD_HOST: guacd       GUACD_PORT: 4822       REMOTE_GATEWAY_API_PORT: 9090       REMOTE_GATEWAY_WS_PORT: 8080       FRONTEND_URL: http://frontend       MAIN_BACKEND_URL: http://backend:3001       NODE_ENV: production     depends_on:       - guacd       - backend   guacd:     image: guacamole/guacd:latest     container_name: nexus-terminal-guacd     restart: unless-stopped

5.3 创建Nexus Terminal容器

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

docker compose up -dDocker环境下部署Nexus Terminal:打造专属的高颜值SSH工作站

5.4 查看Nexus Terminal容器状态

检查Nexus Terminal容器运行状态,确保Nexus Terminal容器正常启动。

root@jeven01:/data/nexus-terminal# docker compose ps NAME                            IMAGE                                          COMMAND                  SERVICE          CREATED         STATUS               PORTS nexus-terminal-backend          heavrnl/nexus-terminal-backend:latest          "docker-entrypoint.s…"   backend          5 minutes ago   Up 5 minutes             3001/tcp nexus-terminal-frontend         heavrnl/nexus-terminal-frontend:latest         "/docker-entrypoint.…"   frontend         5 minutes ago   Up 5 minutes             0.0.0.0:18111->80/tcp, [::]:18111->80/tcp nexus-terminal-guacd            guacamole/guacd:latest                         "/opt/guacamole/entr…"   guacd            5 minutes ago   Up 5 minutes (healthy)   4822/tcp nexus-terminal-remote-gateway   heavrnl/nexus-terminal-remote-gateway:latest   "docker-entrypoint.s…"   remote-gateway   5 minutes ago   Up 5 minutes             8081/tcp, 9090/tcp

六、访问Nexus Terminal服务

浏览器地址: http://<个人的服务器IP>:18111,访问Nexus Terminal的初始页。如果无法访问,请确保宿主机的防火墙已关闭或已放行相关端口,对于云服务器还需配置相应的安全组规则。

Docker环境下部署Nexus Terminal:打造专属的高颜值SSH工作站

自定义填写登录账号密码,确认创建账号。

Docker环境下部署Nexus Terminal:打造专属的高颜值SSH工作站Docker环境下部署Nexus Terminal:打造专属的高颜值SSH工作站

七、Nexus Terminal基本使用

7.1 添加服务器

依次点击终端——连接列表——添加第一个连接,进入服务器登录信息配置页面。

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

这里填写宿主机服务器作为测试,填写登录信息完毕后,点击【确认添加】。

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

在这里插入图片描述

添加完成后双击服务器名称即可完成SSH远程登录,如下所示:

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

7.2 快速编辑文件

在下方的文件列表中,选择文件后,即可在左侧区域打开文件进行编辑。

Docker环境下部署Nexus Terminal:打造专属的高颜值SSH工作站

7.3 审计日志

系统中的所有操作日志均可在审计日志中查询到,便于追踪与审查。通过审计日志,可以全面了解系统的操作记录,提升安全性和可维护性。

Docker环境下部署Nexus Terminal:打造专属的高颜值SSH工作站

八、总结

通过 Docker 部署 Nexus Terminal,不仅能够快速搭建起一个高颜值、功能强大的 SSH 客户端工具,还能充分利用容器化带来的环境隔离与部署便捷性。整个过程操作简单,适合各类用户快速上手。无论是日常运维还是远程管理,Nexus Terminal 都能显著提升效率与使用体验。


作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

展开 收起
0评论

当前文章无评论,是时候发表评论了
提示信息

取消
确认
评论举报

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
12
扫一下,分享更方便,购买更轻松