sever00启动AList

2024-03-27 20:20
文章标签 启动 alist sever00

本文主要是介绍sever00启动AList,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

sever00启动AList

cd ~/domains/alist && ~/.npm-global/bin/pm2 start ./alist -- server

其他

Serv00是一个提供免费的Virtual Host的平台,其托管平台使用的是FreeBSD系统,并不是Linux。每个账号有效期10年,超过三个月不登入Panel以及SSH则会被删除账号。

其提供的服务大致如下表所示:

名称 Serv00 免费提供
存储空间 3 GB
每月流量 unlimited
网站数量 100
MySQL 10
PostgreSQL 3
MongoDB 3
GIT/SVN/HG 仓库 3
TCP/UDP端口 3
PHP解释器 3
系统进程 15
RAM 512MB
备份 7天
服务器放置 欧盟
免费子域名 http://login.serv00.net
技术支持 只有论坛
SLA 不支持
现代技术 支持
SSH访问 支持
SSH隧道 不支持
远程数据库访问 不支持
固态硬盘 支持
没有广告 支持
价格 免费
更详细的配置说明请查阅官方说明。
Serv00使用的面板是这种共享虚拟主机常用的DevilWEB,还挺好上手的。下面详细介绍一下使用Serv00部署Alist的方法步骤:

觉得一步步手动操作太麻烦的,可以直接翻到最末,提供了我的blog地址,提供了一些简化操作的一键式命令。
注册账号
首先去serv00的官网注册一个账号,最好不要使用国内邮箱,注册信息请尽可能真实填写。

注册账号
接着你可以在邮箱里收到你的注册信息的邮件:

注册邮件
邮件最末有Panel的入口地址和文档链接以及论坛链接,接下来登入Panel进行操作:

DevilWEB
首先去左侧的Additional Service选项卡中,找到Run your own applications选项,将其设置为允许:

运行自己的应用
接着去Port reservation选项卡,使用Add port功能,随机添加一个TCP端口:

添加端口
记下你添加的端口,后面要用。

接着使用SSH登入到你的账户,我使用的SSH客户端是Termius:

登入成功!
注意,这一步可能你的网络不一定连得上,可能需要使用打倒美帝的上网手段。
部署Alist
Alist的官方仓库并没有提供FreeBSD版本的可执行文件构筑,但是我在Github上找到了Unofficial的,专门为Alist构筑FreeBSD版本的仓库,所以只要使用这个仓库就可以在Serv00上部署使用Alist了。

Serv00本身提供的网站托管在~/domains路径下,所以我建议把Alist也部署到这个路径下的子目录:

mkdir -p ~/domains/alist && cd ~/domains/alist
接着下载目前uubulb/alist-freebsd提供的最新版的Alist的可执行二进制文件构筑:

wget https://github.com/uubulb/alist-freebsd/releases/download/v3.30.0/alist && chmod +x alist
然后需要先启动一次Alist以生成配置文件,此次启动一定会失败,请不用在意:

./alist server
接着回到Panel中,找到MySQL选项卡,使用Add database功能新建一个数据库:

创建数据库
密码要求含有大写字母、小写字母和数字三种字符,且长度必须超过6个字符。
接下来进入File manager选项卡,进入~/domains/alist/data路径,可以看到一个名为config.json的文件,右键点击,选择View/Edit > Source Editor,进行编辑:

我主要修改了CDN、database、scheme三个部分,其中CDN可以在Alist的官方文档找到,请选择你本地网络连接速度最快的一个。

scheme部分,我选择修改adress为127.0.0.1本地回环,是为了避免被他人使用http://ip:port 的方式进行访问。至于自己怎么访问,我在本文后面的部分会进行介绍。port要改成自己前面放行的端口。

database部分,type需要改成mysql,host填写你在注册邮件中看到的mysql的地址,port是默认的3306,用户名、密码、数据库名则按照你创建的情况进行填写。

改完之后,点击save保存,接着回到SSH窗口中进行操作。

先启动一次,查看运行是否正常:

./alist server

运行正常,记得把管理员用户的密码记住。接着使用Ctrl+c停止运行。

绑定域名
此时还没有访问Alist的方法,因为监听的地址是本地回环,所以需要将其反向代理出来。我选择使用Cloudflare提供的Argo通道,顺带给Alist绑定自己的域名。

Cloudflared官方仓库没有提供FreeBSD平台的客户端,但是和Alist一样的,我找到了Unofficial的FreeBSD版本的构筑,接下来使用它打隧道:

新建并进入Cloudflared的工作目录:

mkdir -p ~/domains/cloudflared && cd ~/domains/cloudflared
下载Cloudflared:

wget https://cloudflared.bowring.uk/binaries/cloudflared-freebsd-2023.10.0.7z && 7z x cloudflared-freebsd-2023.10.0.7z && rm cloudflared-freebsd-2023.10.0.7z && mv -f ./temp/cloudflared-freebsd-2023.10.0 ./cloudflared && rm -rf temp
然后在Cloudflare的面板中,找到Networks分类下的Tunnels功能,点击Create a tunnel,选择Cloudflared,Next,随便取个名字,Next,往下翻,可以看到Run the following command,然后给了一串命令,将其复制出来,大概是这样的:

cloudflared.exe service install eyJhIjoiNzh…V5TWpBeSJ9
前面的不需要管,只需要保留最后ey开头的那串很长的TOKEN,去SSH中测试运行Cloudflared:

./cloudflared tunnel --edge-ip-version auto --protocol http2 --heartbeat-interval 10s run --token eyJhIjoiNzh…V5TWpBeSJ9
记得把最后的那一串替换成你的TOKEN。
接着回到Cloudflare的面板,继续点击Next,然后添加一个自己的域名,Service中,Type选择HTTP,URL填写localhost:PORT,其中PORT为你的Alist对应的端口。点击Save Tunnel后,可以看到自己新建的Tunnel上线。

接着使用Ctrl+c停止运行。然后安装进程管理工具pm2:

bash <(curl -s https://raw.githubusercontent.com/k0baya/alist_repl/main/serv00/install-pm2.sh)
然后使用pm2启动Cloudflared:

~/.npm-global/bin/pm2 start ./cloudflared – tunnel --edge-ip-version auto --protocol http2 --heartbeat-interval 10s run --token eyJhIjoiNzh…V5TWpBeSJ9
记得把最后的那一串替换成你的TOKEN。
再启动Alist:

cd ~/domains/alist && ~/.npm-global/bin/pm2 start ./alist – server
到这里,就可以直接通过你的域名访问刚刚部署的Alist了。

收尾工作
听说Serv00会不定时重启机器,所以我们把pm2添加开机自启,可以保证每次重启都能由pm2调动Alist和Cloudflared。而且Serv00每三个月内必须要有一次登录面板或者SSH连接,不然会删号,也可以通过一个脚本解决问题,接下来我会详细说明。

自动定时SSH
在Panel中找到File manager选项卡,进入alist所在的路径,然后找到上方Send按钮左边的+,选择New empty file,文件名命名为auto-renew.sh, 右键点击auto-renew.sh,选择View/Edit > Source Editor,进行编辑,把下面的代码块的内容都复制进去:

#!/bin/bash

while true; do
sshpass -p ‘密码’ ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -tt 用户名@地址 “exit” &
sleep 259200 #30天为259200秒
done
记得把其中的密码、用户名、ssh的地址修改为你自己的。
保存后回到SSH中,进入auto-renew.sh 所在的路径,并使用pm2管理运行它:

cd ~/domains/alist && chmod +x auto-renew.sh && ~/.npm-global/bin/pm2 start ./auto-renew.sh
这样就会每隔一个月自动执行一次SSH连接,自己SSH自己进行续期。

添加开机自启
在Panel中找到Cron jobs选项卡,使用Add cron job功能添加任务:

Specify time选择After reboot,即为重启后运行。Form type选择Advanced,Command写:

/home/你的用户名/.npm-global/bin/pm2 resurrect
记得把你的用户名改为你的用户名
添加完之后,在SSH窗口保存pm2的当前任务列表快照:

~/.npm-global/bin/pm2 save
这样每次serv00不定时重启任务时,都能自动调用pm2读取保存的任务列表快照,恢复任务列表。

这篇关于sever00启动AList的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/853279

相关文章

MySQL数据库宕机,启动不起来,教你一招搞定!

作者介绍:老苏,10余年DBA工作运维经验,擅长Oracle、MySQL、PG、Mongodb数据库运维(如安装迁移,性能优化、故障应急处理等)公众号:老苏畅谈运维欢迎关注本人公众号,更多精彩与您分享。 MySQL数据库宕机,数据页损坏问题,启动不起来,该如何排查和解决,本文将为你说明具体的排查过程。 查看MySQL error日志 查看 MySQL error日志,排查哪个表(表空间

springboot3打包成war包,用tomcat8启动

1、在pom中,将打包类型改为war <packaging>war</packaging> 2、pom中排除SpringBoot内置的Tomcat容器并添加Tomcat依赖,用于编译和测试,         *依赖时一定设置 scope 为 provided (相当于 tomcat 依赖只在本地运行和测试的时候有效,         打包的时候会排除这个依赖)<scope>provided

内核启动时减少log的方式

内核引导选项 内核引导选项大体上可以分为两类:一类与设备无关、另一类与设备有关。与设备有关的引导选项多如牛毛,需要你自己阅读内核中的相应驱动程序源码以获取其能够接受的引导选项。比如,如果你想知道可以向 AHA1542 SCSI 驱动程序传递哪些引导选项,那么就查看 drivers/scsi/aha1542.c 文件,一般在前面 100 行注释里就可以找到所接受的引导选项说明。大多数选项是通过"_

用命令行的方式启动.netcore webapi

用命令行的方式启动.netcore web项目 进入指定的项目文件夹,比如我发布后的代码放在下面文件夹中 在此地址栏中输入“cmd”,打开命令提示符,进入到发布代码目录 命令行启动.netcore项目的命令为:  dotnet 项目启动文件.dll --urls="http://*:对外端口" --ip="本机ip" --port=项目内部端口 例: dotnet Imagine.M

Linux服务器Java启动脚本

Linux服务器Java启动脚本 1、初版2、优化版本3、常用脚本仓库 本文章介绍了如何在Linux服务器上执行Java并启动jar包, 通常我们会使用nohup直接启动,但是还是需要手动停止然后再次启动, 那如何更优雅的在服务器上启动jar包呢,让我们一起探讨一下吧。 1、初版 第一个版本是常用的做法,直接使用nohup后台启动jar包, 并将日志输出到当前文件夹n

衡石分析平台使用手册-单机安装及启动

单机安装及启动​ 本文讲述如何在单机环境下进行 HENGSHI SENSE 安装的操作过程。 在安装前请确认网络环境,如果是隔离环境,无法连接互联网时,请先按照 离线环境安装依赖的指导进行依赖包的安装,然后按照本文的指导继续操作。如果网络环境可以连接互联网,请直接按照本文的指导进行安装。 准备工作​ 请参考安装环境文档准备安装环境。 配置用户与安装目录。 在操作前请检查您是否有 sud

SpringBoot项目是如何启动

启动步骤 概念 运行main方法,初始化SpringApplication 从spring.factories读取listener ApplicationContentInitializer运行run方法读取环境变量,配置信息创建SpringApplication上下文预初始化上下文,将启动类作为配置类进行读取调用 refresh 加载 IOC容器,加载所有的自动配置类,创建容器在这个过程

嵌入式Openharmony系统构建与启动详解

大家好,今天主要给大家分享一下,如何构建Openharmony子系统以及系统的启动过程分解。 第一:OpenHarmony系统构建      首先熟悉一下,构建系统是一种自动化处理工具的集合,通过将源代码文件进行一系列处理,最终生成和用户可以使用的目标文件。这里的目标文件包括静态链接库文件、动态链接库文件、可执行文件、脚本文件、配置文件等。      我们在编写hellowor

三相直流无刷电机(BLDC)控制算法实现:BLDC有感启动算法思路分析

一枚从事路径规划算法、运动控制算法、BLDC/FOC电机控制算法、工控、物联网工程师,爱吃土豆。如有需要技术交流或者需要方案帮助、需求:以下为联系方式—V 方案1:通过霍尔传感器IO中断触发换相 1.1 整体执行思路 霍尔传感器U、V、W三相通过IO+EXIT中断的方式进行霍尔传感器数据的读取。将IO口配置为上升沿+下降沿中断触发的方式。当霍尔传感器信号发生发生信号的变化就会触发中断在中断

kubelet组件的启动流程源码分析

概述 摘要: 本文将总结kubelet的作用以及原理,在有一定基础认识的前提下,通过阅读kubelet源码,对kubelet组件的启动流程进行分析。 正文 kubelet的作用 这里对kubelet的作用做一个简单总结。 节点管理 节点的注册 节点状态更新 容器管理(pod生命周期管理) 监听apiserver的容器事件 容器的创建、删除(CRI) 容器的网络的创建与删除