docker -u 容器内部没有sudo root的处理方案。docker容器化的nextcloud忘记密码的处理。
简介:#
今天在调试nextclou和AD域控互联。结果脑子抽了,刚安装完的nextcloud,居然忘记了管理用户密码。
虽然重新启一下docker挺方便,但是为了以后更好的使用运维nextcloud,还是另找一下解决方案吧。
一:解决方案occ#
sudo -u http php occ user:resetpassword 用户名 sudo -u http php occ user:list
user user:add 添加一个用户 user:delete 删除特定用户 user:disable 禁用特定用户 user:enable 激活特定用户 user:info 显示用户信息 user:lastseen 显示用户最后登陆了时间 user:list 列出所有用户 user:report 显示有多少用户访问 user:resetpassword 为一个用户重置密码 user:setting 读取和修改用户设置
二:容器操作#
找到occ,执行occ
# cd / # find -name occ …… ./usr/src/nextcloud/occ ./var/www/html/occ # cd /var/www/html # cat occ #!/usr/bin/env php <?php …… require_once __DIR__ . '/console.php'; # ls -la occ -rwxr-xr-x. 1 www-data www-data 283 Jul 15 02:31 occ # php occ user:list Console has to be executed with the user that owns the file config/config.php Current user id: 0 Owner id of config.php: 33 Try adding 'sudo -u #33' to the beginning of the command (without the single quotes) If running with 'docker exec' try adding the option '-u 33' to the docker command (without the single quotes) # with 'docker exec' try adding the option '-u 33' to the docker command (without the single quotes) sh: 22: Syntax error: "(" unexpected # exit
毫不意外的出错了,容器没有sudo,但是提示我使用 -u 33 加入docker命令。
[root@design ~]# docker exec -it -u 33 nextcloud-app-1 sh $ ls 3rdparty core index.php ocs-provider themes AUTHORS cron.php lib public.php version.php COPYING custom_apps nextcloud-init-sync.lock remote.php apps data occ resources config dist ocm-provider robots.txt console.php index.html ocs status.php $ php occ user:list - jack: jack
使用 -u 33 进入容器
使用 php occ 命令即可。
以后使用nextcloud,就可以使用occ命令了。
升级nextcloud,也是需要使用occ命令进行数据扫描,数据库重建的。
三:其他容器#
其实性质是一样的,关键是-u 的uid。
可以进入容器,cat /etc/passwd 来查看UID
$ cat /etc/passwd root:x:0:0:root:/root:/bin/bash daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin bin:x:2:2:bin:/bin:/usr/sbin/nologin sys:x:3:3:sys:/dev:/usr/sbin/nologin sync:x:4:65534:sync:/bin:/bin/sync games:x:5:60:games:/usr/games:/usr/sbin/nologin man:x:6:12:man:/var/cache/man:/usr/sbin/nologin lp:x:7:7:lp:/var/spool/lpd:/usr/sbin/nologin mail:x:8:8:mail:/var/mail:/usr/sbin/nologin news:x:9:9:news:/var/spool/news:/usr/sbin/nologin uucp:x:10:10:uucp:/var/spool/uucp:/usr/sbin/nologin proxy:x:13:13:proxy:/bin:/usr/sbin/nologin www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin backup:x:34:34:backup:/var/backups:/usr/sbin/nologin list:x:38:38:Mailing List Manager:/var/list:/usr/sbin/nologin irc:x:39:39:ircd:/run/ircd:/usr/sbin/nologin _apt:x:42:65534::/nonexistent:/usr/sbin/nologin nobody:x:65534:65534:nobody:/nonexistent:/usr/sbin/nologin
看到root后面的0:0了么?
这个容器可以用 -u 0 进入,就是root权限了。
#
作者:上官飞鸿
出处:https://www.cnblogs.com/jackadam/p/17557372.html
版权:本作品采用「知识共享-署名-非商业性-禁止演绎(CC-BY-NC-ND)」许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
2022-07-16 odoo menuitem