以下内容摘自: https://github.com/OpenListTeam/OpenList/releases/tag/v4.1.1
为了更好地符合容器规范(甚至哪怕是 RedHat 的公约性质规定),从第 74 号问题开始,我们就已经开始准备对容器化使用方式的重构,涉及但不限于将 aria2 迁移为独立镜像等。
在 4.1.1 版本中,我们已移除 PUID/PGID 的运行方式,并且借鉴 MariaDB 等多个知名镜像的构建方法,通过 useradd 新增用户和用户组 openlist ( UID: 1001 ,GID: 1001 ),并以该用户身份运行 openlist server 。
新安装用户:理论上无需额外操作,开箱即用。
已有安装用户:如有权限问题,请在宿主机为该用户进行相应授权。
由于 Docker 和 Podman 在用户命名空间映射上的差异,宿主机用户与容器用户可能不完全对应。Podman 环境下,可以通过 UIDMap 或 UserNS 映射用户。
https://doc.oplist.org/guide/installation/docker
❓ 常见问题:
Q: 宿主机没有 UID 1001 的用户怎么办?
A: 不影响使用,授权时采用数字 UID 即可,无需宿主机实际存在该用户。
老用户更新后 Docker 容器直接起不来了,查日志看到是权限问题,之前一直是以 root 用户启动 Docker 容器,通过如下修改可以修复:
通过 SSH 连接到 NAS
cd [OpenList 容器的文件目录]
sudo chown 1001:1001 *
sudo chmod 755 *
![]() |
1
realpg PRO 基于 UID/GID 数字绝对值 也是神仙操作...
|
![]() |
2
fortynine 7 天前 ![]() 如果我的现有环境已经有 1001 正在用,这个咋整……
|
![]() |
3
Shura 7 天前
瞎折腾
|
4
MoeWang 7 天前 via iPhone
这次决定,就像是和 AI 聊了一会儿,然后被 AI 几个彩虹屁拍的,一拍大腿就上线了😂,直接写死 1001 。殊不知和 AI 聊天的 prompt 也是有技巧的,有些东西不提,它有时候并不会提醒你。
|
![]() |
5
Niphor 6 天前
跑的时候 直接指定 user 不就好了
|
6
idssc 6 天前 via Android
炸了 10 分钟,然后发现这个问题,然后修改了自己的 openlist cli 脚本,不管是 4.1.0 或者变异的 4.1.1 都能支持
|
7
RobinHuuu 6 天前 via Android
自己改 docker 吧,哎
|
8
hosiet 6 天前 via Android ![]() 楼上都是怎么回事?这个 1001 只是无任何参数启动时的 uid/gid 默认值,如果不想用它想用别的用户执行,那直接用 docker 自带的 user 参数指定用户可以了,只不过以往是以环境变量指定现在是用原生方式指定用户而已。什么参数都没有时总要以某个用户身份运行程序吧?难道不用 1001 用 0 ( root )?
如果我有哪里理解不对麻烦提醒我一下。 |