Alist Docker 安装与基础配置教程

📚 Alist Docker 版完整安装与配置教程


一、拉取 Alist 镜像

1.1 配置国内镜像加速器(重要,避免拉取失败)

编辑 Docker 配置文件:

nano /etc/docker/daemon.json

写入以下内容(多地址备份):

{
  "registry-mirrors": [
    "https://docker.m.daocloud.io",
    "https://docker.nju.edu.cn",
    "https://docker.mirrors.ustc.edu.cn"
  ]
}

保存后重启 Docker:

systemctl daemon-reload
systemctl restart docker

1.2 拉取 Alist 镜像

# 拉取最新稳定版
docker pull xhofe/alist:latest

# 或拉取指定版本(以 v3.57.0 为例)
docker pull xhofe/alist:v3.57.0

验证镜像已存在:

docker images | grep alist

二、创建并运行 Alist 容器

2.1 创建数据目录(用于持久化存储)

# 创建数据存放目录(可自定义路径)
mkdir -p /etc/alist

2.2 运行容器

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

参数说明:

  • -d:后台运行
  • --name alist:容器名称
  • --restart always:容器退出时自动重启
  • -p 5244:5244:端口映射(宿主机端口:容器端口)
  • -v /etc/alist:/opt/alist/data:数据持久化(宿主机目录:容器内数据目录)

2.3 验证容器运行状态

docker ps | grep alist

三、查看管理员密码

3.1 查看初始随机密码

# 从日志中提取密码
docker logs alist 2>&1 | grep "password"

输出示例:

INFO[0000] admin user's password: 3kF8pL9x

3.2 完整日志查看

docker logs alist

3.3 手动重置密码(如需)

# 将 "你的新密码" 替换为你要设置的密码
docker exec -it alist ./alist admin set 你的新密码

四、访问与登录

  1. 打开浏览器,访问 http://你的服务器IP:5244
  2. 用户名:admin
  3. 密码:使用上面查看到的密码
  4. 首次登录后建议:点击页面底部"管理" → 左侧"个人资料" → 修改密码

五、Alist 的备份与恢复(JSON/数据库)

Alist 的所有配置、账号信息、元数据都存储在容器外挂载的数据目录中(即 /etc/alist)。

5.1 数据目录结构

ls -la /etc/alist/

主要文件:

  • data.db:SQLite 数据库(存储用户、挂载、设置等)
  • config.json:配置文件(可选)
  • log/:日志目录

5.2 完整备份数据

方法一:手动打包备份

# 先停止容器确保数据一致性
docker stop alist

# 打包整个数据目录
tar -czf alist-backup-$(date +%Y%m%d).tar.gz -C /etc/alist .

# 重新启动容器
docker start alist

方法二:使用 Alist 自带备份功能

登录 Alist 后台:

  1. 点击底部 "管理"
  2. 进入左侧菜单 "设置""备份"
  3. 点击 "创建备份"
  4. 系统会自动生成一个包含所有配置的 ZIP 文件下载

5.3 恢复备份

从手动打包恢复

# 停止容器
docker stop alist

# 清空或备份当前数据目录
mv /etc/alist /etc/alist.old
mkdir -p /etc/alist

# 解压备份到数据目录
tar -xzf alist-backup-20250306.tar.gz -C /etc/alist

# 启动容器
docker start alist

从 Alist 后台恢复

  1. 登录 Alist 后台
  2. "管理""设置""备份"
  3. 点击 "上传备份",选择之前下载的 ZIP 文件
  4. 系统会自动恢复所有配置

5.4 导出/导入 JSON 配置

Alist 支持将部分配置导出为 JSON 文件:

导出:

# 导出所有存储挂载配置
docker exec -it alist ./alist storage list > storages.json

导入:

# 从 JSON 文件导入存储挂载
docker exec -it alist ./alist storage add -f storages.json

六、日常管理命令速查

操作命令
查看容器状态`docker ps -a \grep alist`
查看实时日志docker logs -f alist
停止容器docker stop alist
启动容器docker start alist
重启容器docker restart alist
进入容器内部docker exec -it alist sh
升级 Alistdocker pull xhofe/alist:latest
docker stop alist
docker rm alist
重新运行创建容器的命令

七、注意事项

  1. 数据安全/etc/alist 目录是数据的核心,务必定期备份
  2. 文件权限:如遇权限问题,可尝试 chown -R 1000:1000 /etc/alist
  3. 端口冲突:如果 5244 被占用,修改 -p 参数的第一个数字
  4. 防火墙:确保服务器防火墙放行 5244 端口
  5. 域名访问:如需绑定域名,建议使用 Nginx 反代

已有 19 条评论

    1. EmmaWilson EmmaWilson

      From UK, thanks for the registry mirrors! Saved me from hours of frustration

    2. TomChen TomChen

      domain access with nginx reverse proxy - would love a follow up tutorial on that

    3. 小新 小新

      防火墙放行5244端口这个提醒得好,很多人配完访问不了就是这个原因

    4. GraceWang GraceWang

      The date command in the backup filename is a nice touch, keeps everything organized

    5. PeterPan PeterPan

      数据目录结构那张表格很实用,以前都不知道哪些文件需要备份