前言
Zurl 是一个轻量级的短链接系统,简单易用,适合快速生成和管理短链接。通过 Docker 部署,你可以轻松配置和运行 Zurl,享受便捷的短链接服务。本文将教你如何快速搭建 Zurl 系统,提升链接管理效率。
项目简介
Zurl是一个简洁易用的短链接系统。
本作者另一个开源项目是之前介绍过的OneNav一个导航网站
demo
演示站点:
https://zurl.demo.mba
用户名:xiaoz
密码:blog.xiaoz.org
项目图片
主界面
后台管理界面
主要功能
- 短链接生成:用户可以将长 URL 转换为短链接,方便分享和分发。
- 链接管理:提供直观的界面,管理员可以在其中查看、编辑和删除链接。
- 延时统计:系统会延时统计每个短链接的点击次数,避免高并发时压力过大。
- 自动标题检索:添加链接时,系统会尝试自动检索长 URL 的标题,以便于识别。
- UA 阻止支持:管理员可以自定义要阻止的用户代理,以防止恶意访问。
- 数据迁移:支持将 YOURLS 数据迁移到 Zurl,帮助用户过渡。
- API:提供 API 接口,可供二次开发和集成到任何系统。
- 短链接到期日期:支持设置短链接到期日期。
- 自定义站点信息:可以自定义站点的标题、描述等信息。
- API 令牌管理:提供 API 令牌管理功能,增强安全性。
- 双语支持:支持中文和英文两种语言。
技术栈
- 后端:Python3 + FastAPI
- 前端:Vue3 + Element Plus
- 数据库:SQLite
- 缓存:Redis
部署方法
使用Docker安装
本教程使用docker的方式安装部署,简单便捷
飞牛云NAS或者其他NAS
可以参考下方VPS部署中docker-compose内容
准备条件
1)一台服务器
我们使用莱卡云VPS来演示
需要vps的可以看以下信息
莱卡云官网
2)本项目使用到的开源项目
https://github.com/helloxz/zurl
目前有高达94 stars
更多功能或者二次修改可以访问开源项目地址
3)域名(可选)
域名可以根据自己的需求绑定
一、Docker环境部署
在vps安装docker和docker-compose
Docker官方安装文档(英文)
https://duan.yyzq.eu.org/docker-001
Docker-Compose官方安装文档(英文)
https://duan.yyzq.eu.org/docker-002
Centos安装Docker和Docker-compose(中文)
https://duan.yyzq.eu.org//03
Ubuntu安装Docker和Docker-compose(中文)
https://duan.yyzq.eu.org//04
推荐直接用一键脚本
docker安装脚本
bash <(curl -sSL https://cdn.jsdelivr.net/gh/SuperManito/LinuxMirrors@main/DockerInstallation.sh)
docker-compose安装脚本
curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose && chmod +x /usr/local/bin/docker-compose
二、创建docker-compose.yml文件
mkdir zurl;cd zurl #创建一个目录,并进入此目录
然后再新建docker-compose.yml
vim docker-compose.yml
services:
zurl:
container_name: zurl # 容器名称
image: helloz/zurl # 使用的镜像
ports:
- "3080:3080" # 映射端口,主机的3080端口映射到容器的3080端口
restart: always # 容器总是重启
volumes:
- ./data:/opt/zurl/app/data # 映射本地的 data 目录到容器的指定路径
三、执行容器运行命令
docker-compose up -d #运行容器
docker-compose ps #查看是否开启成功
正常启动如下所示
docker-compose ps
NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS
zurl helloz/zurl "docker-entrypoint.s…" zurl 14 minutes ago Up 14 minutes 0.0.0.0:3080->3080/tcp, [::]:3080->3080/tcp,
四、打开web页面使用
成功以后需要打开自己相应的端口3080)防火墙就可以web端访问了
http://ip:3080
初始化
使用
其他功能自行探索
绑定域名
如需绑定域名的自行绑定
视频教程
B站
YouTube
绑定域名可以参考
NginxProxyManager
https://duan.yyzq.eu.org//npm-ch
有任何问题可以直接留言或者问我
有任何问题可以直接留言或者问我
有任何问题可以直接留言或者问我
欢迎关注我们的微信公众号!
评论区