简单的链接中心软件yal

什么是 yal ?

yal(Yet Another Landingpage) 是一个简单的链接中心,用于显示和搜索链接。允许轻松打造品牌,以最少的权限运行并且易于使用。可以设置吉祥物和徽标(目前是强制性的)。

软件特点

  • 静态生成的站点
  • 单个静态编译的 go 二进制文件
  • 默认情况下以非 root 身份运行
  • 集成任何搜索引擎
  • 简单直观的设计
  • 综合搜索
  • 启动时内联外部图像
  • 无依赖性
简单的链接中心软件yal

准备

yal 通过 json 配置文件维护链接和搜索引擎

items.json

items.json 用于配置要显示的链接

[
  {
    "title""<章节标题>",
    "entries": [
      {
        "text""<显示链接文本>",
        "link""<链接>",
        "description""<搜索和悬停时的简短描述>",
        "icon""<url或本地路径,可以是相对的;需要容器可以访问,并在启动时内联>"
      }
    ]
  }
]

下面是一个示例,因为使用了中文,记得使用 UTF-8 编码

[
  {
    "title""内网",
    "entries": [
      {
        "text""DS3617xs",
        "link""http://192.168.0.197:5000",
        "description""DS3617xs管理入口",
        "icon""https://icons.iconarchive.com/icons/simpleicons-team/simple/256/synology-icon.png"
      },
      {
        "text""DS918",
        "link""http://192.168.0.199:5000",
        "description""DS918管理入口",
        "icon""https://icons.iconarchive.com/icons/simpleicons-team/simple/256/synology-icon.png"
      },
      {
        "text""路由器",
        "link""http://192.168.0.1",
        "description""主路由器管理入口",
        "icon""https://icons.iconarchive.com/icons/inipagi/job-seeker/256/route-icon.png"
      }
    ]
  },
  {
    "title""常用",
    "entries": [
      {
        "text""老苏的blog",
        "link""https://laosu.tech",
        "description""老苏的博客",
        "icon""https://icons.iconarchive.com/icons/aha-soft/3d-social/256/Blog-icon.png"
      },
      {
        "text""CSDN",
        "link""https://blog.csdn.net/wbsu2004",
        "description""CSDN上的博客",
        "icon""https://icons.iconarchive.com/icons/chromatix/keyboard-keys/128/blog-icon.png"
      }
    ]
  }
]

searchEngines.json

searchEngines.json 用于配置搜索引擎,使搜索框显示为最后一个元素

[
  {
    "title""Name",
    "urlPrefix""https://my.search?text=<搜索词>"
  }
]

下面是一个示例

[
  {
    "title""Bing",
    "urlPrefix""https://www.bing.com/search?q="
  },
  {
    "title""baidu",
    "urlPrefix""https://www.baidu.com/s?wd="
  }
]

上面两个设置文件,需放在 config 目录中

简单的链接中心软件yal

图片

目前的版本,吉祥物和徽标是强制的,所以还需要准备 4 个图片文件

为了方便,老苏将需要的文件打包放在了这里:https://github.com/wbsu2003/synology/raw/main/yal/yal.zip,需下载解压后放入 docker 目录

简单的链接中心软件yal

安装

在群晖上以 Docker 方式安装。

在注册表中搜索 timoreymann/yal ,版本选择 latest

本文写作时, latest 版本对应为  1.0.0

简单的链接中心软件yal

yal.zip 解压在 docker 文件夹中,默认带了 3 个子文件夹

文件夹 装载路径 说明
docker/yal/config /app/config 存放设置文件文件
docker/yal/icons /app/icons 存放本地 icon 文件
docker/yal/images /app/images 存放图片文件
简单的链接中心软件yal

端口

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

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

默认没有对外暴露端口

简单的链接中心软件yal

需要点 + 号自行添加

简单的链接中心软件yal

环境

可变
YAL_PORT 监听端口
YAL_PAGE_TITLE 页面标题
YAL_CONFIG_FOLDER 指定设置文件目录
YAL_IMAGES_FOLDER 指定图片文件目录
YAL_MASCOT 吉祥物图片文件名,不需要带扩展名,目前只支持本地图片
YAL_LOGO logo 标志图片文件名,不需要带扩展名,目前只支持本地图片
YAL_BACKGROUND 背景图片文件名,不需要带扩展名,目前只支持本地图片
YAL_FAVICON 图标图片文件名,不需要带扩展名,目前只支持本地图片

只需要添加 YAL_PAGE_TITLE,其他的都用默认值即可

简单的链接中心软件yal

命令行安装

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

# 新建文件夹 yal 和 子目录
mkdir -p /volume1/docker/yal/{config,icons,images}

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

# 运行容器
docker run -d 
   --name yal 
   --restart always 
   -p 2024:2024 
   -v $(pwd)/config:/app/config 
   -v $(pwd)/icons:/app/icons 
   -v $(pwd)/images:/app/images 
   -e YAL_PORT=2024 
   -e YAL_PAGE_TITLE="老苏的 nas 主页" 
   -e YAL_CONFIG_FOLDER=/app/config 
   -e YAL_IMAGES_FOLDER=/app/images 
   -e YAL_MASCOT=mascot 
   -e YAL_LOGO=logo 
   -e YAL_BACKGROUND=background 
   -e YAL_FAVICON=favicon 
   timoreymann/yal:latest

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

因为使用了中文标题,记得使用 UTF-8 编码保存

version: "3.5"

services:
  yal:
    image: timoreymann/yal:latest
    container_name: yal
    restart: always
    ports:
      - 2024:2024
    volumes:
      - ./config:/app/config
      - ./icons:/app/icons
      - ./images:/app/images
    environment:
      YAL_PORT: 2024
      YAL_PAGE_TITLE: 老苏的 nas 主页
      YAL_CONFIG_FOLDER: /app/config
      YAL_IMAGES_FOLDER: /app/images
      YAL_MASCOT: mascot
      YAL_LOGO: logo
      YAL_BACKGROUND: background
      YAL_FAVICON: favicon

然后执行下面的命令

# 新建文件夹 yal 和 子目录
mkdir -p /volume1/docker/yal/{config,icons,images}

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

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

# 一键启动
docker-compose up -d

运行

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

简单的链接中心软件yal

点击搜索栏

简单的链接中心软件yal

支持动态搜索显示

简单的链接中心软件yal

每输入一个字都会过滤结果

简单的链接中心软件yal

参考文档

timo-reymann/yal: A simple link hub, to display and search links. Allows easy branding, runs with the least privileges and is simple to use.
地址:https://github.com/timo-reymann/yal

Link Hub | ACME Corp
地址:https://timo-reymann.github.io/yal/

YAL – Yet another landing page : selfhosted
地址:https://www.reddit.com/r/selfhosted/comments/1bq93ya/yal_yet_another_landing_page/

@所有人:写文不易,如果你都看到了这里,请点个在看,分享给更多的朋友;为确保你能收到每一篇文章,请主页右上角设置星标。

原文始发于微信公众号(各种折腾):简单的链接中心软件yal

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/261359.html

(0)
newbe的头像newbebm

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!