自托管短链接服务Snapp

在这里插入图片描述

什么是 Snapp ?

Snapp 是一款自托管 URL 缩短服务。能轻松缩短链接。借助 Snapp 的自托管功能,您能拥有完全的控制权,并根据您的要求创建简洁、可共享的链接。

使用 Snapp,您可以个性化链接结尾、监控链接的点击次数,设置链接的到期日期以提供额外的安全性。

官方将安装分为了三种情况:

  • 方式一:简易安装,这种方式不推荐,可能会遇到 CORS 问题,也不适合群晖;
  • 方式二:http 协议安装,如果只是在局域网使用,建议这种方式;
  • 方式三:https 协议安装,如果在互联网使用,建议采用这种方式;

下面的三种安装方式,都基于方式二,而 docker cli 还提供了方式三

安装

在群晖上以 Docker 方式安装。

在注册表中搜索 uraniadev ,选择第一个 uraniadev/snapp,双击直接下载

在这里插入图片描述

端口

本地端口不冲突就行,不确定的话可以用命令查一下

# 查看端口占用
netstat -tunlp | grep 端口号
本地端口容器端口
30823000

在这里插入图片描述

环境

可变
ORIGIN如果您遇到 CORS 问题,请务必设置 ORIGIN
PUBLIC_URL如果您遇到 CORS 问题,请务必设置 PUBLIC_URL
NODE_ENV不使用 HTTPS 协议的情况下进行自托管,请设置NODE_ENV=development

默认值如下

在这里插入图片描述

修改之后

在这里插入图片描述

命令行安装

如果你熟悉命令行,可能用 docker cli 更快捷

# 运行容器(http协议)
docker run -d \
   --restart unless-stopped \
   --name snapp \
   -p 3082:3000 \
   -e ORIGIN=http://192.168.0.197:3082 \
   -e PUBLIC_URL=http://192.168.0.197:3082 \
   -e NODE_ENV=development \
   uraniadev/snapp:latest

# 运行容器(https协议)
docker run -d \
   --restart unless-stopped \
   --name snapp \
   -p 3082:3000 \
   -e ORIGIN=https://snapp.laosu.cf \
   -e PUBLIC_URL=https://snapp.laosu.cf \
   uraniadev/snapp:latest

也可以用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件

version: '3'

services:
  snapp:
    image: uraniadev/snapp:latest
    container_name: snapp
    restart: unless-stopped
    ports:
      - 3082:3000
    environment:
      - ORIGIN=http://192.168.0.197:3082
      - PUBLIC_URL=http://192.168.0.197:3082
      - NODE_ENV=development

然后执行下面的命令

# 新建文件夹 snapp
mkdir -p /volume1/docker/snapp

# 进入 snapp 目录
cd /volume1/docker/snapp

# 将 docker-compose.yml 放入当前目录

# 一键启动
docker-compose up -d

运行

在浏览器中输入 http://群晖IP:3082 就能看到主界面

下拉能看到前面提到的三种安装方式,还有一些参数,例如:启用用户注册禁用主页使用 Docker 持久化数据库

在这里插入图片描述

从左侧菜单 Login 进入注册账号

在这里插入图片描述

登录成功后,就是 Dashboard

在这里插入图片描述

点右上角 Shorten an url 来测试一下,没有设置过期时间和密码

在这里插入图片描述

SAVE 之后会回到 Dashboard 首页

在这里插入图片描述

访问地址就是我们前面设置的 PUBLIC_URL + /~/ + SHORT CODE,也就是 http://192.168.0.197:3082/~/i0ydl

访问的次数,在 USAGES 中会有体现

在这里插入图片描述

参考文档

urania-dev/snapp: Yet Another Url Shortner. | A simple excercise to learn Svelte, Svelte5 Runes, and Tabler.
地址:https://github.com/urania-dev/snapp

Snapp.li | Self-hostable Short Url
地址:https://snapp.li/

Snapp | Selfhosted Url Shortner : selfhosted
地址:https://www.reddit.com/r/selfhosted/comments/18chpe4/snapp_selfhosted_url_shortner/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

杨浦老苏

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值