首页 » 遗忘 » 正文内容
2年前 寻梦xunm 1.6K+ 遗忘

68747470733a2f2f696d672e6f657a2e63632f323032302f31322f32342f643831643264616233653566302e706e67.jpg
开源仓库
原作者:https://github.com/Xhofe/alist
下面的项目是博主为了部署方便整合了一个仓库,且支持了Docker部署!
https://github.com/malaohu/alist-oneclick-deploy

配置文件
以下是具体的配置文件内容介绍!按需修改!

info:
  title: AList #网站名称,如果填写,则会替换掉默认的
  logo: #网站logo,如果填写,则会替换掉默认的
  footer_text: "Xhofe's Blog" #网页底部文字
  footer_url: https://www.nn.ci #网页底部文字链接
  music_img: https://img.xhofe.top/2020/12/19/0f8b57866bdb5.gif #预览音乐文件时的图片
  check_update: true #前端是否显示更新
  script: #自定义js脚本,可以是脚本的链接,也可以直接是脚本内容,如document.querySelector('body').style="background-image:url('https://api.mtyqx.cn/api/random.php');background-attachment:fixed"
  autoplay: true #视频是否自动播放
  preview:
    url: https://view.alist.nn.ci/onlinePreview?url= #extensions中包含的后缀名预览的地址,默认使用了kkFileView,可以自行搭建
    pre_process: [base64,encodeURIComponent] #对地址的处理,支持base64,encodeURIComponent,encodeURI
    extensions: [doc,docx,ppt,pptx,xls,xlsx,pdf] #使用上面的url预览的文件后缀
    text: [txt,htm,html,xml,java,properties,sql,js,md,json,conf,ini,vue,php,py,bat,gitignore,yml,go,sh,c,cpp,h,hpp] #要预览的文本文件的后缀,可以自行添加
    max_size: 5242880
server:
  port: "5244" #程序监听端口
  search: false
  static: dist
  site_url: '*' #建议直接填*,若有信任域名要求,可填写其他具体域名,逗号分割
cache:
  enable: true #是否开启缓存
  expiration: 60 #缓存失效时间(单位:分钟)
  cleanup_interval: 120 #清理失效缓存间隔
  refresh_password: password #手动清理缓存密码
ali_drive:
  api_url: https://api.aliyundrive.com/v2
  root_folder: root #根目录
  refresh_token: #必填!!!
  max_files_count: 3000 #一次性最大文件数量

NGINX配置
如果绑定域名,可用nginx反代一下

location / {
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Host $http_host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_redirect off;
    proxy_pass http://127.0.0.1:5244;
}

项目部署
手动
1)首选需要准备一台服务器。

2)由于我们部署的是golang编译后的文件,所有不用预装golang环境!

3)下载开源项目,根据你不同的系统选择不同的编译后的可执行文件(文章上方有介绍)!

前往AList Release下载对应系统的程序,解压得到一个运行文件alist
前往AList-web下载打包好的前端,解压得到一个dist目录放到alist同级目录下
在同级目录下新建一个配置文件conf.yml,复制上面的配置内容,按需修改!
4)启动项目

chmod +x alist
nohup ./alist > log.log 2>&1 &

5)如果想绑定域名,直接修改NGINX,反代一下即可!

location / {
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Host $http_host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_redirect off;
    proxy_pass http://127.0.0.1:5244;
}

自动
这里主要针对小白童鞋!可执行下方的命令简单的部署 !

提醒,该脚本暂时只适用于Linux x86。其他环境自己修改一下脚本。

git clone https://github.com/malaohu/alist-oneclick-deploy.git
cd alist-oneclick-deploy
sh install.sh

Docker
提醒,该脚本暂时只适用于Linux x86。其他环境自己修改一下Dockerfile,然后自己发布一下。

关于Docker请参考小白教程:【小白教程】Docker安装使用教程,以及常用命令!

下载镜像

docker pull malaohu/alist

启动镜像

docker run -d --name alist malaohu/alist [token] [folder]

后面的俩个参数分别是TOKEN 和 要分享的目录

例如:

docker run -d --name alist malaohu/alist 5972ed0bd4f54d3d974fa41a8231e root

如果启动Docker容器后,如果无法访问网络,那么在启动命令中加入 –net=host 参数。

例如:

docker run -d --net=host --name alist malaohu/alist 5972ed0bd4f54d3d974fa41a8231e root

常见问题
Q:如何给文件夹设置密码?
A:在要加密的目录下新建一个名称为.password-要设置的密码的文件或者文件夹就可以了。

Q:如何设置根目录?
A:修改配置文件中的ali_drive.root_folder 为想要设置的文件夹的file_id即可。

Q:如何自定义网页底部链接?
A:修改配置文件中的footer_text和footer_url为要设置的内容,或者不填则不会显示。

Q:怎么复制文件直链?
A:进入文件预览,可以预览的文件复制按钮在右上角,不可预览的复制按钮在正中间(backend_url必须设置正确)。

Q:修改网站icon?
A:替换掉dist目录下的favicon.ico即可。

Q:为什么新上传的文件不显示/删除了的文件还在?
A:为了提高响应速度,对文件的列表是有缓存的,默认开启。

Q:如何开关缓存?
A:配置文件中的cache.enable设置为true或false即可,打开会占用更多的内存,但会大幅优化使用体验,默认打开。经测试下载地址是会失效的,所以请自行设置缓存的时间。下个版本将给文件去掉缓存,只缓存文件夹。更新文件的时候可以手动刷新缓存。

Q:如何刷新缓存?
A:程序会自动按照配置文件中的cache.cleanup_interval自动清理过期缓存,如需手动刷新,手动访问后端地址/cache/配置文件中设置的刷新密码,如https://alist.nn.ci/cache/alist

Q:如何更新?
A:前端:下载新的打包好的文件,删掉原来的dist文件夹,解压新的dist放入原来的位置即可。后端:pkill alist 停掉老的进程,删除旧的alist,下载新的alist,查看配置文件,补上新的配置项,再次运行即可。

Q:要安装Windows版本?
A:自行编译,或者在Github Actions可以找到每次提交的build。

0 赞 or 打赏
喜欢就打赏一点
微信 支付宝
已有0 条评论,0 个点赞
隐私

Q Q:1340326824

vipshiyi@qq.com

QQ群:422720328

生活所迫,再见了苦逼的BUG们,以后有缘在会吧。