(【Docker项目实战】Docker环境下部署NeonLink书签平台)

一、NeonLink介绍

1.1 NeonLink简介

NeonLink是一个简单开源的自托管书签服务。它是轻量级的,使用最少的依赖项,并且易于通过 Docker 安装。

1.2 NeonLink特点

  • 简洁的用户界面:优化用户体验,让用户能够快速、直观地管理和浏览书签。

  • 标签和分类:允许用户通过添加标签和分类来组织和整理自己的书签,使其更易于查找。

  • 智能搜索:提供高效的搜索功能,让用户能够快速找到自己需要的书签,其搜索结果会根据用户搜索的关键词和历史使用情况进行智能推荐。

  • 丰富的图标、标题和描述:NeonLink自动获取网站的图标、标题和描述,让用户对每个书签有更直观的了解。

  • 定制化背景:提供多样化的背景选择,用户可以根据个人喜好定制自己的书签页面,提升使用乐趣。

  • 隐私保护:NeonLink致力于用户隐私保护,采取必要的安全措施,确保用户的个人信息和书签数据得到保护。

  • 个性化仪表盘:提供个性化的仪表盘,用户可以自定义显示的书签、标签等内容,让用户能够快速访问常用的链接。

  • 开放源代码:NeonLink是开源项目,任何人都可以参与和贡献,共同改进和发展这个书签平台。

二、本地环境介绍

2.1 本地环境规划

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

hostname IP地址 操作系统版本 Docker版本
jeven 192.168.3.166 centos 7.6 20.10.17

2.2 本次实践介绍

1.本次实践部署环境为个人测试环境,生产环境请谨慎; 2.在Docker环境下部署NeonLink书签平台。

三、本地环境检查

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 Fri 2023-12-08 19:10:36 CST; 1 day 21h ago
     Docs: https://docs.docker.com
 Main PID: 11729 (dockerd)
    Tasks: 25
   Memory: 1021.7M
   CGroup: /system.slice/docker.service

3.2 检查Docker版本

检查Docker版本

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

3.3 检查docker compose 版本

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

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

四、下载NeonLink镜像

从docker hub拉取neonlink镜像

[root@jeven ~]# docker pull  alexscifier/neonlink:latest
latest: Pulling from alexscifier/neonlink
a378f10b3218: Pull complete
bc194d4002b7: Pull complete
910e3cedcdea: Pull complete
e7d69b9ffd1d: Pull complete
a34097e5108e: Pull complete
39fd146f2103: Pull complete
caf2ce107e5a: Pull complete
7c80f1a3781d: Pull complete
c5297b8cbf70: Pull complete
Digest: sha256:51f00652100b7aad40800a866325877c17aed5e75d42c993c63edc86cfc3cd36
Status: Downloaded newer image for alexscifier/neonlink:latest
docker.io/alexscifier/neonlink:latest

五、部署NeonLink书签平台

5.1 使用docker-cli创建neonlink容器

使用docker-cli快速部署neonlink容器

docker run -d --name neonlink -p 9850:3333 -v /data/neonlink/data:/app/data -v /data/neonlink/backgrounds:/app/public/static/media/background alexscifier/neonlink:latest

5.2 创建目录

创建主机挂载目录

[root@jeven ~]# mkdir -p /data/neonlink/{data,backgrounds}
[root@jeven ~]# cd /data/neonlink/

设置目录权限

 chmod -R 777 /data/neonlink/

5.3 使用docker compose创建neonlink容器

使用docker compose部署neonlink容器

version: '3'
services:
  neonlink:
    image: alexscifier/neonlink:latest
    container_name: neonlink
    ports:
      - "9850:3333"
    volumes:
      - /data/neonlink/data:/app/data
      - /data/neonlink/backgrounds:/app/public/static/media/background
    restart: always

  • 使用docker-compose.yaml文件创建neonlink容器
[root@jeven neonlink]# docker compose up -d
[+] Running 2/2
 ⠿ Network neonlink_default  Created                                                                                    0.1s
 ⠿ Container neonlink        Started                                                                                    1.3s

5.4 检查neonlink容器状态

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

[root@jeven neonlink]# docker compose ps
NAME                COMMAND                  SERVICE             STATUS              PORTS
neonlink            "docker-entrypoint.s…"   neonlink            running             0.0.0.0:9850->3333/tcp, :::9850->3333/tcp

5.5 检查neonlink容器日志

检查neonlink容器运行日志,确保neonlink服务正常运行。

[root@jeven neonlink]# docker compose logs
neonlink  | Secrets saved.
neonlink  | Settings saved.
neonlink  | Config plugin initialization completed.
neonlink  | Database plugin initialization completed.
neonlink  | Life cycle plugin initialization completed.
neonlink  | Starting migrations...
neonlink  | Applying initial database script...
neonlink  | Attempt to apply initial...
neonlink  | Updating version number to 6...
neonlink  | Migrations completed.
neonlink  | Application initialized.
neonlink  | Server started listening on http://0.0.0.0:3333

六、访问NeonLink服务

6.1 注册NeonLink登录账号

访问地址:http://192.168.3.166:9850/,将IP更换为自己服务器的IP地址。如果无法访问,注意防火墙和安全组设置问题,设置自定义登录账号和密码。

在这里插入图片描述

6.2 访问NeonLink首页

填写设置的登录账号和密码,访问NeonLink首页。

在这里插入图片描述

七、NeonLink的基本使用

7.1 添加网页书签

点击增加书签选项,输入收藏的网页链接。

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

7.2 查看书签列表

查看书签列表

在这里插入图片描述

7.3 打开收藏的书签

在书签列表,打开刚才添加的书签,跳转到我们收藏的网站。

在这里插入图片描述

八、总结

NeonLink是一个开源的书签平台,界面美观、功能强大,适合部署在个人服务器上。它适用于个人学习和日常使用,可以定制属于自己的书签页,并分类整理收藏的网页书签。如果你需要一款开源的个人书签系统,不妨尝试一下NeonLink。