这是一个支持多种云盘的文件列表程序,基本上囊括了国内的所有云盘,使用它就可以访问所有的云盘,并且支持上传和下载。
安装Alist
创建并跳转到Alist文件夹
mkdir -p /root/data/docker_data/alist
cd /root/data/docker_data/alist
创建docker-compose.yml文件
vim docker-compose.yml
按i粘贴以下docker-compose内容
version: '3.3'
services:
alist:
image: 'xhofe/alist:latest'
container_name: alist
volumes:
- ./alist:/opt/alist/data # 按你所需映射到对应的文件夹。
- /root:/root
ports:
- '5244:5244'
environment:
- PUID=0
- PGID=0
- UMASK=022
- TZ=Asia/Shanghai # 设置时区为中国
restart: unless-stopped
按下ESC,输入 :wq 退出并保存文件。
运行容器
docker-compose up -d
稍等片刻即可在浏览器输入 ip:5244,即可访问到alist。
账号密码
账号:admin
此时输入以下命令即可查看密码
docker exec -it alist ./alist admin
如果显示没有密码,第一次需要自己设置,可以输入以下命令添加。
docker exec -it alist /bin/sh
# 手动设置一个密码,`NEW_PASSWORD`是指你需要设置的密码
./alist admin set NEW_PASSWORD
添加云盘
添加存储可以查看官方文档:本地存储 | AList文档 (nn.ci)
美化
进入后台,点击设置=全局,在自定义内容可以写入css来实现美化。
这里贴下自用css美化代码:
<!--引入所需的JavaScript和CSS文件-->
<script src="https://polyfill.io/v3/polyfill.min.js?features=String.prototype.replaceAll"></script> <!--Alist V3建议添加的,已经默认添加了,如果你的没有建议加上-->
<link rel="stylesheet" href="https://npm.elemecdn.com/[email protected]/lxgwwenkai-regular.css" /> <!--引入字体,全局字体使用-->
<script src='https://unpkg.com/valine/dist/Valine.min.js'></script> <!--评论系统使用的js-->
<script async src="https://busuanzi.icodeq.com/busuanzi.pure.mini.js"></script> <!--不蒜子计数器-->
<link type='text/css' rel="stylesheet" href="https://npm.elemecdn.com/[email protected]/css/fontawesome.min.css" media='all'> <!-- Font6,自定义底部使用和看板娘使用的图标和字体文件-->
<link href="https://npm.elemecdn.com/[email protected]/css/all.min.css" rel="stylesheet">
<link rel="stylesheet" href="https://npm.elemecdn.com/[email protected]/dist/APlayer.min.css"> <!--音乐播放器所用的文件-->
<script src="https://npm.elemecdn.com/[email protected]/dist/APlayer.min.js"></script>
<script src="https://npm.elemecdn.com/[email protected]/dist/Meting.min.js"></script>
<style>
/* 去除通知栏右上角的 X 按钮 */
.notify-render .hope-close-button {
display: none;
}
/* 图片API使用说明
樱花:https://www.dmoe.cc
夏沫:https://cdn.seovx.com
搏天:https://api.btstu.cn/doc/sjbz.php
姬长信:https://github.com/insoxin/API
小歪:https://api.ixiaowai.cn/
保罗:https://api.paugram.com
墨天逸:https://api.mtyqx.cn
岁月小筑:https://img.xjh.me
东方Project:https://img.paulzzh.com
*/
/* 白天背景图 */
.hope-ui-light {
background-image: url("https://r2-img.snty.de/2024/07/23/669f43520e078.jpg") !important;
background-repeat: no-repeat;
background-size: cover;
background-attachment: fixed;
background-position-x: center;
}
/* 夜间背景图 */
.hope-ui-dark {
background-image: url("https://r2-img.snty.de/2024/07/23/669f34c3a3b11.jpg") !important;
background-repeat: no-repeat;
background-size: cover;
background-attachment: fixed;
background-position-x: center;
}
/* 主列表夜间模式透明,50%为透明度 */
.obj-box.hope-stack.hope-c-dhzjXW.hope-c-PJLV.hope-c-PJLV-iigjoxS-css {
background-color: rgb(0 0 0 / 50%) !important;
}
/* readme夜间模式透明,50%为透明度 */
.hope-c-PJLV.hope-c-PJLV-iiuDLME-css {
background-color: rgb(0 0 0 / 50%) !important;
}
/* 主列表透明 */
.obj-box.hope-stack.hope-c-dhzjXW.hope-c-PJLV.hope-c-PJLV-igScBhH-css {
background-color: rgba(255, 255, 255, 0.5) !important;
}
/* readme透明 */
.hope-c-PJLV.hope-c-PJLV-ikSuVsl-css {
background-color: rgba(255, 255, 255, 0.5) !important;
}
/* 顶部右上角切换按钮透明 */
.hope-c-ivMHWx-hZistB-cv.hope-icon-button {
background-color: rgba(255, 255, 255, 0.3) !important;
}
/* 右下角侧边栏按钮透明 */
.hope-c-PJLV-ijgzmFG-css {
background-color: rgba(255, 255, 255, 0.5) !important;
}
/* 白天模式代码块透明 */
.hope-ui-light pre {
background-color: rgba(255, 255, 255, 0.1) !important;
}
/* 夜间模式代码块透明 */
.hope-ui-dark pre {
background-color: rgba(255, 255, 255, 0) !important;
}
/* 底部CSS,.App .table这三个一起的 */
dibu {
border-top: 0px;
position: absolute;
bottom: 0;
width: 100%;
margin: 0px;
padding: 0px;
}
.App {
min-height: 85vh;
}
.table {
margin: auto;
}
/* 去掉底部 */
.footer {
display: none !important;
}
/* 全局字体 */
* {
font-family: LXGW WenKai;
}
* {
font-weight: bold;
}
body {
font-family: LXGW WenKai;
}
/* 评论系统专用 */
/* 适配大小契合度 */
.newValine {
width: min(96%, 940px);
flex-direction: column;
row-gap: var(--hope-space-2);
border-radius: var(--hope-radii-xl);
padding: var(--hope-space-2);
box-shadow: var(--hope-shadows-lg);
}
/* 评论区 - 白天模式透明度 */
.hope-ui-light .newValine {
background-color: rgba(255, 255, 255, 0.8) !important;
}
/* 评论区 - 夜间模式透明度 */
.hope-ui-dark .newValine {
background-color: rgb(0 0 0 / 80%) !important;
}
/* 输入栏里面跳舞的小人背景图 */
.vedit {
background-image: url(https://cdn.jsdelivr.net/gh/anwen-anyi/imgAnwen/images/OuNiJiang.gif);
background-size: contain;
background-repeat: no-repeat;
background-position: right bottom;
transition: all 0.25s ease-in-out 0s;
}
textarea#comment-textarea:focus {
background-position-y: 120px;
transition: all 0.25s ease-in-out 0s;
}
/* 渐变背景CSS */
#canvas-basic {
position: fixed;
display: block;
width: 100%;
height: 100%;
top: 0;
right: 0;
bottom: 0;
left: 0;
z-index: -999;
}
</style>
<!--鼠标点击效果-->
<script src="https://cdn.jsdelivr.net/gh/TRHX/[email protected]/js/maodian.js"></script>
<!-- 右上角天气 -->
<iframe allowtransparency="true" frameborder="0" width="290" height="96" scrolling="no" src="//tianqi.2345.com/plugin/widget/index.htm?s=1&z=1&t=0&v=0&d=2&bd=0&k=&f=<f=009944&htf=cc0000&q=1&e=1&a=1&c=54511&w=290&h=96&align=center"></iframe>
<!--备案信息-->
</style>
<link href="https://lf6-cdn-tos.bytecdntp.com/cdn/expire-1-M/font-awesome/6.0.0/css/all.min.css" rel="stylesheet">
<div id="customize" style="display:none; text-align:center;">
<br />
<div style="font-size:15px; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;">
<span class="nav-item">
<a class="nav-link" href="https://blog.snty.de/" target="_blank">
<i class="fa fa-user-secret" style="color:#ffffff;" aria-hidden="true"></i>
我的博客 |
</a>
</span>
<span class="nav-item">
<a class="nav-link" href="https://imgs.snty.de/" target="_blank">
<i class="fa fa-box-archive" style="color:#ffffff;" aria-hidden="true"></i>
我的图床 |
</a>
</span>
<span class="nav-item" style="margin-bottom: 5px;">
<a class="nav-link" href="/@manage" target="_blank">
<i class="fa fa-gears" style="color:#ffffff;" aria-hidden="true"></i>
管理后台
</a>
</span>
<div style="line-height: 20px; font-size: 9pt; font-weight: bold;">
<span>
<span style="color:#ffffff); font-weight: bold; font-size: 15px;" id="hitokoto">
<a href="#" id="hitokoto_text">
"天地本宽,而鄙者自隘。"
</a>
</span>
</span>
</div>
<br />
</div>
<script>
let interval = setInterval(() => {
if (document.querySelector(".footer")) {
document.querySelector("#customize").style.display = "";
clearInterval(interval);
}
}, 200);
</script>
评论区