准备工作
创建文件夹
打开飞牛OS桌面的【文件管理】,双击进入【docker】文件夹,选择【创建文件夹】,文件夹名称【openlist】


创建好后需要复制文件夹位于宿主机的路径,方便后续使用:

保存好此路径!
安装步骤
创建项目
打开飞牛OS桌面的【Docker】应用,点击左侧【Compose】菜单,点击右上角的【新增项目】,在弹出的窗口中,填写项目名称【openlist】,填写路径【此路径为第一步准备工作中创建的文件夹】,选择【创建docker compose.yml】,粘入【刚才复制的代码(代码①)】,点击【确定】即可;

此时进入到项目管理页面,在列表点击刚才创建的【openlist】项目右侧的启动按钮(类似电源图标),docker项目会自动构建;

等待出现如下界面,即代表构建完成,此时可以关闭窗口;

此时项目已构建完成;
创建好了之后,点击左侧【容器】菜单,进入容器管理界面,找到openlist容器,鼠标移到容器右侧更多(…),在弹出的菜单中,选择运行日志,点击查看;


找到 Successfully created the admin user and the initial password is: EgKxvZBy 这行,其中password为密码的意思,冒号后面的即为密码,账号统一为admin;
访问openlist容器:
1、可使用作为宿主机的当前FNOS的IP:5244,如飞牛NAS的访问地址为192.168.0.10:5666,则访问地址为:http://192.168.0.10:5244
2、可在飞牛NAS的docker应用中左侧菜单中的容器,找到刚刚创建的openlist项目,鼠标移到右侧快捷访问按钮,在弹出菜单选择5244:5244,点击即可打开;

至此,openlist已完成安装!
相关代码
复制下列代码:
(代码①)
v4.1.1 及以后版本(包括最新版本)
services:
openlist:
image: 'openlistteam/openlist:latest'
container_name: openlist
user: '0:0' # Please replace `0:0` with the actual user ID and group ID you want to use to run OpenList.
volumes:
- '/etc/openlist:/opt/openlist/data'
ports:
- '5244:5244'
environment:
- UMASK=022
restart: unless-stopped
v4.1.0 及以前版本
services:
openlist:
image: 'openlistteam/openlist:latest'
container_name: openlist
volumes:
- './data:/opt/openlist/data'
ports:
- '5244:5244'
environment:
- PUID=0
- PGID=0
- UMASK=022
restart: unless-stopped
更改image: 'openlistteam/openlist:latest'中,openlist:latest为openlist:v4.1.0则为4.1.0版本。
注意修改:
volumes:
- '/etc/openlist:/opt/openlist/data' 中的 /etc/openlist 为开篇准备工作中创建文件夹的位置,即创建完成文件夹后,准备工作步骤最后复制的路径!
例如:
volumes:
- '/vol1/1000/docker/openlist:/opt/openlist/data'
如果不慎直接创建了,删除该文件夹代码为
sudo rm -rf /etc/openlist
需使用SSH连接FNOS,成功连接后需转至root用户,再输入删除代码。
核心配置解析
image: 'openlistteam/openlist:latest'
使用官方镜像 openlistteam/openlist 的最新版本(latest标签)。
container_name: openlist
指定容器名称为 openlist(取代默认生成的随机名称)。
volumes:
- '/etc/openlist:/opt/openlist/data'
数据持久化:将宿主机的目录 /etc/openlist 挂载到容器内的 /opt/openlist/data。
目的:确保容器重启或更新时,应用数据(如配置文件、数据库等)不会丢失。
ports:
- '5244:5244'
端口暴露:将宿主机的 5244 端口映射到容器的 5244 端口。
访问方式:通过 http://宿主IP:5244 访问 OpenList 服务。
environment:
- PUID=0 # 用户ID (0 = root)
- PGID=0 # 组ID (0 = root)
- UMASK=022 # 权限掩码
权限控制:
PUID=0 和 PGID=0:容器内进程以 root 用户运行(需注意安全风险)。
UMASK=022:新建文件/目录的默认权限为:
文件:644(所有者可读写,其他用户只读)
目录:755(所有者可读/写/执行,其他用户可读/执行)
PS:
user:
user: '0:0' # Please replace `0:0` with the actual user ID and group ID you want to use to run OpenList.(0:0可替换为具体的用户和用户组)
restart: unless-stopped
重启策略:容器退出时自动重启,除非用户手动停止(docker stop)。
适用场景:确保服务意外崩溃或宿主机重启后自动恢复。