[TOC]

0.背景介绍

由于有资源共享的想法,正好手里有一台阿里云的服务器,但是是2核2G1M的配置,直接当下载服务器能下到海枯石烂都下不完。但好在阿里云OSS的对象存储每个月在香港区都有5G免费空间,于是考虑使用服务器搭建资源站,挂载oss负责文件下载。

经过对比(Nextcloud、Cloudreve、可道云等),最终选定Alist作为资源站服务端,主要看中了易操作、可扩展性强的优点。

1.使用docker安装Alist

为了方便管理,使用docker进行部署。服务器系统为Centos Stream 9,安装了docker和docker-compose-plugin。

直接在根目录创建一个Alist的文件夹

mkdir -p /home/alist

然后使用docker命令

docker run -d --restart=always \
-v /home/alist:/opt/alist/data \
-p 5244:5244 \
--name="alist" \
xhofe/alist:latest

端口和挂载目录都可随意修改。

随后查看日志,获取初始密码

docker logs alist

image-20240218223514871

输出中有一句Successfully created the admin user and the initial password is: <password>

这就是admin的初始密码。

随后在浏览器中输入ip:5244即可进入管理页面,默认用户名:admin,默认密码则是刚才生成的初始密码

image-20240218223813218

完成后点击登录,即可进入主界面

2.创建oss的存储桶

image-20240218224033941进入阿里云的对象存储管理界面,选择创建Bucket

image-20240218225604806创建一个存储桶,类型为“标准冗余”,地域选择“中国香港”(也可以选择其它免费地域),存储冗余为本地冗余存储即可

OSS存储费用的计费项_对象存储(OSS)-阿里云帮助中心 (aliyun.com)

以下表格涉及的计费项中,仅标准存储(本地冗余)容量支持使用5 GB/月的免费额度(即每月标准存储(本地冗余)容量≤5 GB时,不收取标准存储(本地冗余)容量费用)。支持使用免费额度的地域为:中国香港、美国(硅谷)、美国(弗吉尼亚)、新加坡、澳大利亚(悉尼)、马来西亚(吉隆坡)、印度尼西亚(雅加达)、菲律宾(马尼拉)、泰国(曼谷)、日本(东京)、韩国(首尔)、德国(法兰克福)、英国(伦敦)、阿联酋(迪拜)、印度(孟买)地域。

image-20240218225411724进入概览页面,记录下这两个值:Endpoint名称

随后点击右上角的头像,进入AccessKey管理

image-20240218225714261

创建一个AccessKey,并记下AccessKeyIDAccessKeySecret的值。

image-20240218225957820

随后进入访问域名和数据中心_对象存储(OSS)-阿里云帮助中心 (aliyun.com)查看地区id与endpoint对应image-20240218230658431比如香港就是oss-cn-hongkong

3. Alist绑定存储桶

image-20240218230147058进入Alist主界面,点击下方”管理“按钮

image-20240218230225660进入”存储”,选择添加

image-20240218230312271“驱动”选择对象存储,写一个挂载路径(比如/drive)

image-20240218230954009随后填写存储桶Endpoint地区访问密钥id和安全访问密钥(AccessToken Secret),

image-20240218231150185确认后即可在主界面中看到此文件夹。

4.上传文件测试

传个大点的文件测试,上传完成后即可在“文件列表”中查看到文件。

image-20240218235312387