• 自托管书签管理器LinkAce


    在这里插入图片描述

    本文完成于 9 月下旬,当时的版本是 v1.10.4,发稿时最新版本为 v1.10.5

    什么是 LinkAce ?

    LinkAce 是一个自托管档案,用于收集您喜爱的网站的链接,并保存文章以供日后阅读。LinkAce 提供了一个长期存档来存储指向网站、媒体文件或其他任何具有有效 URL 的链接。用户可以对添加的链接进行分类以便以后找到它们,并与朋友、家人或同事共享链接列表。但是,LinkAce 不提供同步浏览器书签的解决方案。

    LinkAce 有两个不同版本的镜像:

    • 一个包含应用程序和 Web 服务器的容器(标记为linkace/linkace:simple),simple 版中,只需要一个 Docker 容器和一个可选的数据库。如果您在 Docker 之外使用托管数据库,则只需运行一个容器。
    • LinkAce 作为带有独立 Web 服务器的独立容器(标记为linkace/linkace:latest),高级设置与简单设置没有太大区别,但可能不适合某些环境。具体来说,它为应用程序和 Web 服务器使用不同的容器。docker-compose 文件还包括 Redis 的配置,从而提高了性能。

    老苏介绍的是基于 linkace/linkace:simple 的安装,你可以在 https://github.com/Kovah/LinkAce/releases/tag/v1.10.5 找到官方提供的安装样板文件,当然你也可以跟着老苏一步一步操作

    如果不想搭建,可以试试官方的 demo 站点:https://demo.linkace.org/guest/links

    准备

    建数据库

    数据库直接用的群晖MariaDB 10,在 phpMyAdmin 中创建了名为 linkace 的数据库

    .env 文件

    环境变量文件 .env 的设置,需要根据上一步数据库的设定做调整

    ## LINKACE CONFIGURATION
    
    ## Basic app configuration
    COMPOSE_PROJECT_NAME=linkace
    # The app key is generated later, please leave it like that
    APP_KEY=z8E9VP5NAV2Bhtt2ewDy8vJcv25fYjCi
    
    ## Configuration of the database connection
    ## Attention: Those settings are configured during the web setup, please do not modify them now.
    # Set the database driver (mysql, pgsql, sqlsrv)
    DB_CONNECTION=mysql
    # Set the host of your database here
    DB_HOST=192.168.0.197
    # Set the port of your database here
    DB_PORT=3307
    # Set the database name here
    DB_DATABASE=linkace
    # Set both username and password of the user accessing the database
    DB_USERNAME=linkace
    DB_PASSWORD=123456
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20

    变量的具体说明见下表👇

    可变
    COMPOSE_PROJECT_NAME项目名称
    APP_KEY应用程序标识,用验证接入的合法性,老苏一般用 Bitwarden 生成
    DB_CONNECTION数据库类型
    DB_HOST数据库主机名或者 IP
    DB_PORT数据库端口
    DB_DATABASE数据库库名
    DB_USERNAME数据库用户
    DB_PASSWORD数据库密码,老苏只是演示用的

    还支持邮件设置,具体参数可以看:https://www.linkace.org/docs/v1/setup/post-setup/

    安装

    在群晖上以 Docker 方式安装。

    在注册表中搜索 linkace ,选择第一个 linkace/linkace,版本选择 simple

    在这里插入图片描述

    docker 文件夹中,创建一个新文件夹 linkace,并在其中建两个子文件夹,分别是 backupslogs,并将 .env 放入到 linkace 目录

    需要为 .env 文件和 logs 目录设置 Everyone 用户的写入权限

    文件夹装载路径说明
    docker/linkace/.env/app/.env环境变量文件
    docker/linkace/backups/app/storage/app/backups备份目录
    docker/linkace/logs/app/storage/logs日志目录

    在这里插入图片描述

    端口

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

    # 查看端口占用
    netstat -tunlp | grep 端口号
    
    • 1
    • 2
    本地端口容器端口
    876680

    默认有 3 个端口

    老苏只保留了 80 端口

    在这里插入图片描述

    导入数据库表

    在导入数据库表之前,如果你打开网页,会看到服务器错误

    在这里插入图片描述

    需要进入终端机中

    在这里插入图片描述

    执行 php artisan migrate,并输入 yes 进行导入

    命令行安装

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

    # 新建文件夹 linkace 和 子目录
    mkdir -p /volume2/docker/linkace/{backups,logs}
    
    # 进入 linkace 目录
    cd /volume2/docker/linkace
    
    # 将 .env 放入当前目录
    
    # 修改 .env 文件 和 logs 目录的权限
    chmod 666 {.env,logs}
    
    # 运行容器
    docker run -d \
       --restart unless-stopped \
       --name linkace \
       -p 8766:80 \
       -v $(pwd)/.env:/app/.env \
       -v $(pwd)/backups:/app/storage/app/backups \
       -v $(pwd)/logs:/app/storage/logs \
       linkace/linkace:simple
    
    # 导入数据库表,输入 yes 开始导入
    docker exec -it linkace php artisan migrate
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23

    在这里插入图片描述

    如果你再次执行,会显示 Nothing to migrate.

    在这里插入图片描述

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

    version: "3"
    
    services:
      linkace:
        image: linkace/linkace:simple
        container_name: linkace
        restart: unless-stopped
        ports:
          - "8766:80"
        volumes:
          - ./.env:/app/.env
          - ./backups:/app/storage/app/backups
          - ./logs:/app/storage/logs
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13

    然后执行下面的命令

    # 新建文件夹 linkace 和 子目录
    mkdir -p /volume2/docker/linkace/{backups,logs}
    
    # 进入 linkace 目录
    cd /volume2/docker/linkace
    
    # 将 .env、docker-compose.yml 放入当前目录
    
    # 修改 .env 文件 和 logs 目录的权限
    chmod 666 {.env,logs}
    
    # 一键启动
    docker-compose up -d
    
    # 导入数据库表,输入 yes 开始导入
    docker exec -it linkace php artisan migrate
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    运行

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

    在这里插入图片描述

    向导

    如果没有执行 chmod 666 {.env,logs}

    在这里插入图片描述

    必须都是小绿勾才行

    在这里插入图片描述

    配置数据库,直接点 Configue Database

    在这里插入图片描述

    勾选 I confirm that all data should be deleted and overwritten with a new LinkAce database 继续点 Configue Database

    在这里插入图片描述

    创建管理员账号

    设置完成,点 Go to the Dashboard

    在这里插入图片描述

    中文

    配置完成后,进入主界面

    在这里插入图片描述

    右上角 Setting 中可以设置语言

    在这里插入图片描述

    保存之后,界面就是中文了

    在这里插入图片描述

    书签

    设置完成后,尝试添加第一个书签

    在这里插入图片描述

    添加完成

    在这里插入图片描述

    回到首页

    参考文档

    GitHub - Kovah/LinkAce: Your self-hosted bookmark archive. Free and open source.
    地址:https://github.com/Kovah/LinkAce

    LinkAce - Your self-hosted bookmark archive. Free and open source.
    地址:https://www.linkace.org/

    Setup with Docker - LinkAce
    地址:https://www.linkace.org/docs/v1/setup/setup-with-docker/

  • 相关阅读:
    个人收入理财App的设计与实现
    实战:Linux下静默安装DM达梦数据库
    聊聊jedis连接池参数配置
    实践案例丨CenterNet-Hourglass论文复现
    【Mac 教程系列第 18 篇】如何修改 iTerm2 的背景图片
    CSM会议室预约系统源码
    Android JNI 异常定位(2)—— addr2line
    idea如何创建并运行第一个java程序
    c++11 智能指针 (std::shared_ptr)(五)
    golang适合做什么
  • 原文地址:https://blog.csdn.net/wbsu2004/article/details/128110354