最近在浏览 GitHub 时发现了一个非常有趣的项目。通常情况下,当我们想在社交媒体或其他平台分享我们的个人博客网址或代码仓库等链接时,只能分享一个链接。但是,这个项目让我们能够通过简单的配置生成一个可以分享多个链接的炫酷页面。这个项目就是 LinkStack。今天我想和大家分享如何使用 Docker Compose 部署和使用它。

# 项目介绍

官方地址:https://linkstack.org/ (opens new window)

github地址:https://github.com/LinkStackOrg/LinkStack (opens new window)

效果图

_20240516231039.jpg

博主地址:http://linkstack.xiuji.mynatapp.cc (opens new window)

LinkStack是一个独特的平台,提供了一个高效的解决方案,用于在线管理和分享链接。我们的平台提供了一个类似Linktree的网站,允许用户克服社交媒体平台只能添加一个链接的限制。

通过LinkStack,用户可以轻松链接到他们自己的定制页面,并为他们的关注者提供一个方便的位置,以便访问他们需要的所有链接。LinkStack与其他链接管理平台的不同之处在于其灵活性,允许用户将其链接托管在自己的网络服务器或网络托管提供商上。这为用户提供了对其在线存在的完全控制,并确保他们的链接易于访问。

此外,LinkStack允许其他用户注册并创建自己的链接,使其成为管理多个链接的理想解决方案,适用于企业和组织。通过我们友好的管理面板,管理和访问其他用户的链接变得很容易。

该项目目前在github已有2k star

_20240516214325.jpg

# 项目部署与配置

# 第一步:创建docker-compose.yml 文件

首先,我们创建一个部署目录linkstack,并在该目录下创建一个docker-compose.yml文件,内容如下:

docker-compose.yml

version: "3.8"
services:
  linkstack:
    hostname: 'linkstack'
    image: 'linkstackorg/linkstack:latest'
    environment:
      TZ: 'Asia/Shanghai'
      LOG_LEVEL: 'info'
      PHP_MEMORY_LIMIT: '256M'
      UPLOAD_MAX_FILESIZE: '8M'
      # 首次启动的时候注释掉数据卷,启动之后将容器中的/htdocs复制到宿主机中,在放开注释
      #    volumes:
      #      - './data:/htdocs'
    ports:
      - '8180:80'
      - '8190:443'
    restart: always

# 第二步:启动服务

在docker-compose.yml 的同级目录下执行以下命令,启动容器:

docker-compose up -d

# 第三步:复制持久化目录并挂载

启动之后使用以下命令查询容器id

docker ps -a | grep linkstack

_20240516215446.jpg

通过容器id将容器中的/htdocs目录复制到我们的部署目录下

 docker cp 1cb617f61144:/htdocs ./data

修改data目录的权限

chmod -R 777 data

修改docker-compose.yml文件,将我们之前注释掉的数据挂载卷放开,并重启服务

_20240516215851.jpg

停止服务

docker-compose down

启动服务

docker-compose up -d

# 配置服务

启动服务之后我么在浏览器中输入并访问 http://192.168.10.171:8180/

  • 配置语言

_20240516220617.jpg

  • 配置数据库

如果你有mysql数据库的话先创建一个linkstack数据库,并配置,没有mysql的话可以直接使用SQLite,我此处使用的是mysql

_20240516220818.jpg

_20240516221416.jpg

  • 配置账号

_20240516221633.jpg

  • 配置系统配置信息

_20240516221952.jpg

到此,我们就通过的页面的配置了我们的主要信息,如果你还想修改或者详细配置的话可以通过编辑挂在目录下的.env文件进行修改或者配置,配置完记得重启服务。

_20240516222835.jpg

_20240516222707.jpg

# 使用服务

我们此处只演示下添加链接、配置主题和分享的功能,其它配置及功能家人们可自行研究

  • 登录服务

使用我们配置的账号和密码登录服务

_20240516223022.jpg

_20240516223312.jpg

  • 添加链接

_20240516223957.jpg

  • 配置主题

系统提供了三种主题可供我们选择

_20240516224800.jpg

_20240516224948.jpg

效果如下

_20240516225026.jpg

我们还可以通过光网下载一些别的主题导入进来使用

_20240516225240.jpg

_20240516225411.jpg

如果你对现有的背景图不满意的话也可以自己上传背景图 _20240516230052.jpg

# 总结

总的来说,linkstack是一个优秀的开源项目,为用户提供了方便快捷的书签管理和分享功能。相信随着时间的推移,linkstack会变得越来越完善,成为更多人的首选工具。