本地部署开源书签管理工具 LinkAce 并实现外部访问( Linux 版本)

LinkAce 是一款开源的书签管理和归档工具,它提供了一个现代化的界面和一系列强大的功能,帮助用户高效地管理他们的网络资源链接。本文将详细介绍如何在 Linux 系统局域网内部署 LinkAce 并结合路由侠实现外网访问局域网内部署的 LinkAce 。

第一步,本地部署 LinkAce

1,本教程使用 Linux Ubuntu 系统进行演示,首先输入以下命令更新软件包列表并安装这些依赖项。

复制代码
sudo apt-get update
sudo apt install apache2 php mysql-server composer git

2,利用 Git 将 LinkAce 仓库克隆到本地服务器上的 web 根目录中。

复制代码
cd /var/www/html
sudo git clone https://github.com/kovah/LinkAce.git linkace

3,进入项目目录,复制 .env.example 文件为 .env 。

复制代码
cd linkace
sudo cp .env.example .env

编辑其中的数据库连接信息和其他必要配置。

复制代码
sudo vim .env

内容修改如下:

复制代码
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=linkace
DB_USERNAME=linkace
DB_PASSWORD=linkace123

4,创建数据库。

复制代码
sudo mysql -u root -p
复制代码
CREATE DATABASE linkace CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
GRANT ALL PRIVILEGES ON linkace.* TO 'linkace'@'localhost' IDENTIFIED BY 'linkace123';
FLUSH PRIVILEGES;
EXIT;

5,运行 Composer 来安装 LinkAce 的所有依赖项。

复制代码
sudo composer install --no-dev --optimize-autoloader

6,生成应用密钥。

复制代码
sudo -u www-data php artisan key:generate

7,运行数据库迁移脚本。

复制代码
sudo -u www-data php artisan config:cache
sudo -u www-data php artisan migrate --seed

8,根据你使用的 Web 服务器配置相应的虚拟主机指向 LinkAce 的公共目录,本教程以 Apache 为例,创建虚拟主机配置文件。

复制代码
sudo vim /etc/apache2/sites-available/linkace.conf

在打开的文件中输入以下内容:

复制代码
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html/linkace/public
ServerName 你的服务器 IP

<Directory /var/www/html/linkace/public>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>

ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

启用 LinkAce 配置并重新加载 Apache 配置让改动生效。

复制代码
sudo a2ensite linkace.conf
sudo systemctl reload apache2

9,确保 Web 服务器用户对 LinkAce 目录有适当的读写权限。

复制代码
sudo chown -R www-data:www-data /var/www/html/linkace
sudo chmod -R 755 /var/www/html/linkace
sudo chmod -R 775 /var/www/html/linkace/storage /var/www/html/linkace/bootstrap/cache

10,打开浏览器并访问地址 http://你的服务器 IP ,就能看到你部署的 LinkAce 初始化界面了,根据提示完成初始化。

创建管理员账号。

就能看到你部署的 LinkAce 界面了。

第二步,外网访问本地 LinkAce

安装路由侠内网穿透。

1,当前未提供网页管理,需要先在任意一台 Windows 机器安装路由侠 Windows 版本,用作跨机器管理。点此下载

2,在路由侠客户端主界面,进入" 设备管理 ",点击右下角的" 添加设备 ",此时可查看到对应的安装码,此安装码用于将设备添加到对应账号下,可选中后复制。

3,直接下载后导入:

复制代码
wget https://dl.luyouxia.com:8443/v2/lyx-docker-x86_64.tar
docker load -i lyx-docker-x86_64.tar

4,然后使用该镜像启动容器。

复制代码
docker run --name lyx -it --restart=always --net=host -e code=这里填写安装码 luyouxia/lyx

5,此时,需要等待下载和安装的过程,如果一切正常,最终可以看到一些输出,并且可以看到如下提示:

复制代码
[Device] Logged in. Token: ....

这就表示安装成功了。

当前 Linux 终端这边,如果是使用的上面的命令,Docker 是运行在前台,此时可以按住 Ctrl + C ,退出路由侠,容器也将退出。现在可以使用以下命令将其放入后台持续运行:

复制代码
docker start lyx

注意如果容器删除,重新 docker run , 将创建为新的设备。

需要注意的是,因为容器参数已经添加了 --restart=always ,这样开机就会自动启动,不需要再手动启动路由侠了。

6,现在回到 Windows 这边设备列表,点击右上角的 × 返回主界面,再次进入,就可以找到这个设备,可以修改名称。

7,回到主界面,点击【内网映射】。

8,注意右上角的设备名称下拉框,这里选中刚刚添加的设备名称,此时在这个界面上添加的映射,就属于刚刚这个设备。添加或修改一般需要等待 30 秒,容器中的路由侠进程就会更新并加载。切换好设备后,点击【添加映射】。

9,选择【原生端口】。

10,在内网地址填写你的服务器 IP 和 LinkAce 端口 80 后点击【创建】按钮,如下图。

11,创建好后,就可以看到一条映射的公网地址,鼠标右键点击【复制地址】。

12,在内网电脑编辑虚拟主机配置文件。

复制代码
sudo vim /etc/apache2/sites-available/linkace.conf

修改服务名为你刚刚复制的路由侠地址。

复制代码
ServerName lyxbook.f1.luyouxia.net:13615

重新加载 Apache 配置让改动生效。

复制代码
sudo systemctl reload apache2

13,在外网电脑上,打开浏览器,在地址栏输入从路由侠生成的外网地址,就可以看到内网部署的 LinkAce 登录界面了。

相关推荐
aningx1 小时前
cachyos 从 GRUB 切换到 rEFInd
linux
第404号工位3 小时前
40块钱二手瘦客户端,如何跑满家庭物联网中枢?(拒绝Docker爆盘实录)
linux·架构·node.js
对象存储与RustFS3 小时前
网盘限速逼你开会员?用 RustFS 自己搭一个不限速的“私人网盘
服务器·后端·docker
骑着蜗牛撵大象3274 小时前
Linux 进程间通信之管道:从 pipe() 的内核语义到 FIFO 落地排错
android·java·linux·系统编程·fifo·管道·进程间通信
众壹新能源科技5 小时前
逆变器自带无功不够用,加装5MVar SVG后功率因数从0.85回到0.99
运维·人工智能·自动化
..Dauntless..5 小时前
【Linux】一切皆文件和缓冲区
linux·运维·服务器
裕晟资质规划5 小时前
三类资质变更报告时限差在哪?军工 15 日、集成印制 10 日
大数据·服务器·网络
QMCY_jason5 小时前
x86 ubuntu2204 无gui 安装 openeuler 2203 aarch64版本
linux·运维·服务器
重生之小比特5 小时前
【Linux系统】12 进程程序替换 自定义Shell 命令行解释器
linux·运维·服务器
轻舟技术A5 小时前
Provider 不属于 Agent 核心:rpi 的分层理由与收益
服务器·网络