简介
前后端完整的网址导航服务,可以用于公司内部内网使用,提供多种的卡片图标生成方式,能将上传的原型压缩包自动生成可访问的地址,支持私密卡片,发布倒计时等功能。
用于在公司内网部署使用,可在线修改上传、可拖拽排序等。
项目地址:https://github.com/tuituidan/team-nav 
要求Java版本为 1.8.0
功能介绍
- 网址导航前端展示+搜索功能,首页图。
- 网址导航后台基本功能:分类和卡片的增删改查,后台-分类管理图  后台-卡片列表图  后台-卡片编辑图。
- 分类和卡片支持拖拽调整顺序,不用专门维护排序字段。
- 支持添加秘密卡片分类,该分类下的卡片需要登录才能看见,不开启登录功能则默认不显示。
- 暂时不需要的分类支持移除功能,移除后分类列表页面不可见,可从历史分类中还原回来,后台-历史分类图。
- 卡片图标支持四种方式
- 文本图标,输入少量文字作为图标,并可以为其选择背景色。 后台-卡片编辑图
- 根据填写的链接自动获取该链接的获取favicon.ico图标。
- 手动上传图片作为图标。
- 可配置默认常用的一些图标,直接选择(搜索按图标文件名搜索),卡片图标选择图。
 
- 三种卡片类型说明
- 普通类型:标题,内容,图标为必填,链接非必填,没有链接只是作为少量信息展示,点击卡片不会跳转页面。
- 原型类型:标题,内容,图标,原型文件为必填,原型文件上传后会自动生成原型展示的链接,点击卡片可跳转到该地址。
- 二维码类型:标题,内容,图标,链接均为必填,鼠标滑到卡片上会显示链接的二维码,可用手机进行扫描,方便进行移动端网址显示,二维码展示图。
 
- 原型可通过配置Nginx访问,后台-系统设置图。
- 发布倒计时功能,在首页对项目发布截止时间进行提醒,在系统设置中进行开启和关闭,同时有多个进行中的发布数据时,会定时切换,切换时间也在系统设置中设置。 首页-发布倒计时  后台-发布倒计时
效果图

部署
ZIP包部署
系统:Rocky Linux 8 (关闭SE Linux 关闭防火墙)
| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 
 | dnf install vim wget java-1.8.0-openjdk  -y
 
 
 cd /opt/
 
 wget https://github.com/tuituidan/team-nav/releases/download/v1.0.9/team-nav.tar.gz
 
 
 
 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配置。
Docker部署
Docker 安装参考:https://yeasy.gitbook.io/docker_practice/install/centos 
| 12
 3
 4
 5
 
 | mkdir -p /opt/team-nav/logsmkdir /opt/team-nav/database
 mkdir /opt/team-nav/ext-resources
 mkdir /opt/team-nav/config
 
 
 | 
创建日志、数据库、图片、配置文件夹。
| 12
 3
 4
 5
 6
 7
 8
 9
 10
 
 | 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:1.0.9
 
 
 | 
映射容器8080端口到宿主机8080端口,通过访问主机 http://127.0.0.1:8080 。
映射上述步骤创建的文件夹
配置网站名字
配置为自动启动
配置容器名字
管理
登录
路径:http://127.0.0.1:8080/login 
默认账号:admin
默认密码:123456
允许修改密码(docker镜像是无此文件的,手动创建即可)
| 12
 3
 4
 5
 6
 
 | vim /opt/team-nav/config/application.yml
 # 是否开启页面上进行密码修改,用户只有一个,请谨慎开启
 change-password:
 enable: true
 
 
 | 
| 12
 3
 4
 5
 6
 7
 8
 
 | /opt/team-nav/bin/status.sh 
 
 
 docker  restart team-nav
 
 
 
 
 | 
Nginx反向代理域名
| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 
 | vim /etc/nginx/conf.d/team.conf
 
 server {
 listen 80;
 listen [::]:80;
 
 server_name team.baidu.com;
 
 
 
 location / {
 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;
 }
 }
 
 
 | 
一般来说只修改域名即可