当前位置: 首页 > news >正文

部署企业网站内部导航 Team-Nav 2.0

简介

前后端完整的网址导航服务,可以用于公司内部内网使用,提供多种的卡片图标生成方式,能将上传的原型压缩包自动生成可访问的地址,支持私密卡片,发布倒计时等功能。

用于在公司内网部署使用,可在线修改上传、可拖拽排序等。

项目地址:https://github.com/tuituidan/team-nav

要求Java版本为 1.8.0

功能说明

  • 首页
    • 最高支持三级分类的显示,可搜索,点击左侧菜单支持高亮定位右侧卡片。
    • 支持设置自定义主题。
    • 附件的在线查看和下载。
    • 头部可显示通知公告,支持倒计时模式。
    • 设置常用卡片分类,收藏个人常用网址。
    • 申请提交卡片。
  • 后台管理
    • 仅支持管理员角色进入后台管理(管理员角色可设置多人),其他人只能通过首页的卡片申请进行卡片添加,由管理员审核后生效。
  • 后台管理-分类管理
    • 三级分类树的基本增删改查及排序。
    • 对需要归档的分类支持移除到历史分类中,移除后不再显示到首页,可随时从历史分类中还原回来。
    • 可为卡片分类分配角色,未分配角色为公共分类,对所有人公开,不管登录与否,设置角色后必须登录且有对应角色的人才能看到(人员角色设置下面在角色和用户管理模块中)。
  • 后台管理-卡片管理
    • 卡片基本的增删改查及排序。
    • 管理员进行卡片审核。
    • 三种卡片类型:
      • 普通卡片:一般的内容型卡片,承载少量信息,可添加链接进行点击跳转。
      • 静态网站:上传发布成静态网站的压缩包(根目录带index.html)。
      • 动态卡片:内容将根据配置的http请求或sql动态更新(开发中)。
    • 支持私密信息添加,仅登录后人员才能查看。
    • 卡片图标支持上传,选择自定义图片,自动获取链接favicon.ico、文字图标四种方式。
    • 支持附件上传。
  • 后台管理-角色管理
    • 角色基本增删改查,管理员角色不支持修改删除。
    • 可以给角色分配卡片分类,不支持给管理员分配卡片分类,因为他本来就能看到所有。
    • 可以给角色分配人员。
  • 后台管理-用户管理
    • 用户基本增删改查及重置密码
  • 后台管理-通知公告
    • 通知公告的基本增删改查及排序。
    • 通知内容支持富文本编辑,如果选择截止时间,会自动出现倒计时,一般用于项目发布倒计时,同时有多个通知公告时,会定时切换,切换时间在系统设置中设置。
  • 后台管理-系统设置
    • 基本设置,包括设置当前网站服务名、LOGO、公告切换时间等设置。
    • 卡片自定义图标上传。

效果图

在这里插入图片描述

在这里插入图片描述

部署

ZIP包部署

系统:Rocky Linux 8/9 (关闭SE Linux 关闭防火墙)

dnf install vim wget java-1.8.0-openjdk  -y# 安装JDK 8cd /opt/wget https://github.com/tuituidan/team-nav/releases/download/v2.0.4/team-nav.tar.gz# 下载,也可以手动下载,上传到opt目录下。(https://github.com/tuituidan/team-nav/releases)tar -zxvf team-nav.tar.gz # 解压tree /opt
.
├── team-nav
│   ├── bin
│   │   ├── restart.sh
│   │   ├── start.sh
│   │   ├── status.sh
│   │   └── stop.sh
│   ├── config
│   │   └── application.yml
│   ├── docs
│   ├── logs
│   ├── README.md
│   ├── readme.txt
│   └── team-nav.jar
└── team-nav.tar.gz# 目录结构如上chmod +x /opt/team-nav/bin/* # 给予脚本权限/opt/team-nav/bin/start.sh# 启动/opt/team-nav/bin/status.sh 
team-nav 服务正在运行中 (PID: 9527). [is running ...]# 查看是否运行/opt/team-nav/bin/stop.sh# 停止运行

默认端口为8080,通过8080端口访问服务,修改端口可以进入/opt/team-nav/config/application.yml配置。

添加为Sysemd服务

vim /usr/lib/systemd/system/team-nav.service [Unit]
Description=team-nav
After=network.target[Service]
User=root
Type=forking
ExecStart=/opt/team-nav/bin/start.sh
ExecStop=/opt/team-nav/bin/stop.sh
RemainAfterExit=yes[Install]
WantedBy=multi-user.target

写入到文件保存。

systemctl daemon-reload

加载自定义服务

systemctl start team-nav.service
systemctl status team-nav.service

尝试启动,并查看状态。

systemctl enable team-nav.service

设置开启及并启动

Docker部署

Docker 安装参考:https://yeasy.gitbook.io/docker_practice/install/centos

mkdir -p /opt/team-nav/logs
mkdir /opt/team-nav/database
mkdir /opt/team-nav/ext-resources
mkdir /opt/team-nav/config

创建日志、数据库、图片、配置文件夹。

docker run -d -p 8080:8080 \-v /opt/team-nav/logs:/logs \-v /opt/team-nav/database:/database \-v /opt/team-nav/ext-resources:/ext-resources \-v /opt/team-nav/config:/config \-e nav-name="团队内部导航服务" \--restart always \--name team-nav \
registry.cn-chengdu.aliyuncs.com/tuituidan/team-nav:2.0.4

映射容器8080端口到宿主机8080端口,通过访问主机" http://127.0.0.1:8080 "。

映射上述步骤创建的文件夹

配置网站名字

配置为自动启动

配置容器名字

管理

登录

路径:http://127.0.0.1:8080/login

默认账号:admin

默认密码:123456

Nginx反向代理域名

vim /etc/nginx/conf.d/team.confserver {listen 80;listen [::]:80;server_name team.baidu.com;# reverse proxylocation / {proxy_pass http://127.0.0.1:8082/;proxy_http_version      1.1;proxy_cache_bypass      $http_upgrade;proxy_set_header Upgrade                        $http_upgrade;proxy_set_header Connection             "upgrade";proxy_set_header Host                           $host;proxy_set_header X-Real-IP                      $remote_addr;proxy_set_header X-Forwarded-For        $proxy_add_x_forwarded_for;proxy_set_header X-Forwarded-Proto      $scheme;proxy_set_header X-Forwarded-Host       $host;proxy_set_header X-Forwarded-Port       $server_port;}location /ext-resources/modules {alias   /opt/team-nav/ext-resources/modules;index  index.html index.htm;}
}

一般来说只修改域名即可

从源码构建一体jar包

基于Rocky Linux 9

dnf install git maven java-1.8.0-openjdk -ydnf module install nodejs:20 -ydnf install npm -y# 安装依赖cd ~git clone https://github.com/tuituidan/team-nav.gitcd team-nav/webnpm installnpm install @vue/cli-service -gcd ..mvn clean package -Dmaven.npm.skip=false

在 /root/team-nav/target/jpack/ 目录下有Linux部署的压缩包。

构建Docker镜像(要先操作完上面)


cd team-navcat Dockerfiledocker build -t team-nav:2.0.4-songxwn.com .

相关文章:

  • MCAL学习(1)——AutoSAR
  • OpenGL-ES 学习(12) ---- GPU 系统结构
  • RAG工程-基于LangChain 实现 Advanced RAG(预检索-查询优化)(上)
  • 类和对象(拷贝构造和运算符重载)下
  • 脑机接口技术:开启人类与机器的全新交互时代
  • jupyter notebook汉化教程
  • 【RocketMQ 生产者消费者】- 同步、异步、单向发送消费消息
  • SIEMENS PLC程序代码 赋值 + 判断
  • 操作系统(1)多线程
  • CMake管理外部依赖的模块
  • 极大电视 0.0.5.2| 基于Web的电视直播应用,提供高清、流畅的央视频道和各大卫视直播,完全免费无广告
  • C# 方法的结构与执行详解
  • GD32F407单片机开发入门(二十五)HC-SR04超声波模块测距实战含源码
  • [计算机科学#7]:CPU的三阶段,取指令、解码、执行
  • 2025五一杯数学建模B题:矿山数据处理问题,详细问题分析,思路模型
  • 实习入职的总结
  • RPG_5.角色动画
  • 如何拿奖蓝桥杯
  • UN R79 关于车辆转向装置形式认证的统一规定(正文部分2)
  • 数字智慧方案6157丨智慧医疗建设方案(85页PPT)(文末有下载方式)
  • 挑大梁!一季度北上广等7省份进出口占外贸总值四分之三
  • 印巴局势紧张或爆发军事冲突,印度空军能“一雪前耻”吗?
  • 《一鸣惊人》五一特别节目:以戏曲为桥梁,展现劳动者的坚守
  • 今年4月上海一二手房成交面积同比增21%,二手房成交2.07万套
  • 深观察丨从“不建议将导师挂名为第一作者”说开去
  • 阿斯利康中国区一季度收入增5%,或面临最高800万美元新罚单