【Docker项目实战】使用Docker部署bender个人仪表板

一、bender介绍

1.1 bender简介

  • bender简介

bender是一个开源的、无需任何代码即可管理的链接仪表板。非常适合服务器上的服务列表。深受 Homer 仪表板的启发,旨在提供相同的功能 有一个重大变化,不需要 yaml!所有链接都可以通过 UI 进行管理,包括拖放链接以重新排序或更改组。 可以通过 UI 添加新页面和链接,也可以添加应用程序标题、图标和主题等全局设置。

1.2 bender特点

  • 使用 NuxtJS 和 Vue2 构建
  • 不需要数据库,所有配置都存储在一个配置文件中static/config.json
  • FontAwesome 实体和品牌图标可用于内置搜索
  • 支持通过任何内容进行图像查找static/images
  • 浅色和深色模式

1.3 bender使用场景

Bender可作为个人书签及导航工具在家庭、个人和小型企业的使用场景中,都可以帮助用户组织和管理他们的书签,并提供快速访问和分组功能,提高效率和方便性。

  • 家庭使用:Bender可以帮助家庭成员共享和管理他们的个人书签。家庭成员可以创建自己的书签文件夹,将感兴趣的网页添加到书签中,并根据自己的偏好进行分类和组织。这样,每个家庭成员都可以快速访问他们最喜欢的网页,而不必再次搜索或记住网址。

  • 个人使用:对于个人用户来说,Bender可以帮助他们组织和管理他们的个人书签。他们可以创建不同的书签文件夹,根据不同的主题或兴趣将网页分类。此外,Bender还提供了强大的搜索功能,用户可以根据关键词快速找到他们需要的书签,节省时间和提高效率。

  • 小型企业使用:Bender可以用作小型企业的团队书签导航工具。团队成员可以使用Bender共享和协作书签。他们可以创建共享书签文件夹,并邀请其他团队成员加入和访问这些书签。这样,团队成员可以轻松共享有用的网页资源,并保持信息的统一性和一致性。

二、本地环境介绍

2.1 本地环境规划

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

hostnameIP地址操作系统版本Docker版本
jeven192.168.3.166centos 7.620.10.17

2.2 本次实践介绍

1.本次实践部署环境为个人测试环境,生产环境请谨慎;
2.在Docker环境下部署bender个人仪表板。

三、本地环境检查

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 Tue 2024-01-16 21:50:10 CST; 1 day 15h ago
     Docs: https://docs.docker.com
 Main PID: 11677 (dockerd)
    Tasks: 26
   Memory: 2.0G
   CGroup: /system.slice/docker.service
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.

3.2 检查Docker版本

检查Docker版本

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

3.3 检查docker compose 版本

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

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

四、下载bender镜像

从docker hub拉取bender镜像

[root@jeven ~]# docker pull jez500/bender:latest
latest: Pulling from jez500/bender
213ec9aee27d: Already exists
864b973d1bf1: Pull complete
80fe61ad56f5: Pull complete
e3887ab559e6: Pull complete
dc3b27895cd1: Pull complete
ccee28b9a313: Pull complete
47a6719c28a2: Pull complete
Digest: sha256:32983833590fb1662742065cbd2ff209e0d913cd373a46f075aa482aa7ee5fc9
Status: Downloaded newer image for jez500/bender:latest
docker.io/jez500/bender:latest
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.

五、部署bender个人仪表板

5.1 创建部署目录

创建部署目录

[root@jeven ~]#  mkdir -p /data/bender
[root@jeven ~]# cd /data/bender/
  • 1.
  • 2.

5.3 编辑docker-compose.yaml文件

docker-cli命令

docker run -d \
  --name bender \
  -p 8380:8080 \
  -v /data/bender/assets/>:/app/static \
  --restart=always \
  jez500/bender:latest
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.

本次实践部署使用docker compose方式,编辑docker-compose.yaml文件。

version: '3.9'
services:
    bender:
        image: 'jez500/bender:latest'
        restart: always
        volumes:
            - '/data/bender/assets/:/app/static'
        ports:
            - '8380:8080'
        container_name: bender




  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.

5.4 创建bender容器

使用docker-compose.yaml文件创建bender容器

[root@jeven bender]# docker compose up -d
[+] Running 2/2
 ⠿ Network bender_default  Created                                                                                      0.2s
 ⠿ Container bender        Started                                                                                      1.9s
  • 1.
  • 2.
  • 3.
  • 4.

5.5 检查bender容器状态

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

[root@jeven bender]# docker ps
CONTAINER ID   IMAGE                  COMMAND                  CREATED          STATUS                             PORTS                                  NAMES
b9fb5bfe495a   jez500/bender:latest   "/bin/sh /app/entryp…"   22 seconds ago   Up 20 seconds (health: starting)   0.0.0.0:8380->8080/tcp, :::8380->8080/tcp   bender
  • 1.
  • 2.
  • 3.

六、访问bender首页

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

【Docker项目实战】使用Docker部署bender个人仪表板_仪表板

七、bender的基本使用

7.1 新增页面

点击“+”,选择新增页面选项。

【Docker项目实战】使用Docker部署bender个人仪表板_docker_02

自定义填写页面信息

【Docker项目实战】使用Docker部署bender个人仪表板_仪表板_03
【Docker项目实战】使用Docker部署bender个人仪表板_容器_04

7.2 新增链接

点击“Add your first link”选项

【Docker项目实战】使用Docker部署bender个人仪表板_容器_05

填写网址链接信息,自定义编辑即可。

【Docker项目实战】使用Docker部署bender个人仪表板_docker_06
【Docker项目实战】使用Docker部署bender个人仪表板_容器_07

7.3 更改图标

在挂载目录/data/bender/assets下,查看image目录文件。

[root@jeven assets]# ls images/
deluge.svg         duplicati.png    hdhr.png      pfsense.png   proxmox.png  router.svg       vscode.svg
docker.png         filebrowser.svg  kubeapps.png  pihole.svg    qnap.png     sonaar.svg
download-blue.svg  grafana.svg      minio.svg     plex.png      radarr.png   traefik.svg
download-red.svg   guacamole.png    netdata.svg   prowlarr.png  rancher.svg  uptime-kuma.png
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.

在新增链接编辑页面,图标选择位image目录下的图片文件名。

【Docker项目实战】使用Docker部署bender个人仪表板_Docker_08
【Docker项目实战】使用Docker部署bender个人仪表板_docker_09

八、总结

Bender个人仪表板是一款优秀的个人书签与导航工具。它拥有美观简洁的界面,并且非常易于使用。借助Docker技术的支持,Bender可以在本地服务器上快速部署。它提供了书签分组功能,方便我们整理众多收藏的网址。此外,Bender还内置了大量图标,提升了界面的美观度。整体而言,Bender的使用体验良好,网页链接跳转快速,操作流畅,是一款出色的书签工具!