容器中创建的文件在宿主机中权限属于root ,而不是当前用户的问题解决方法._error response from daemon: linux spec user: unabl-CSDN博客文章浏览阅读6.5k次,点赞2次,收藏5次。解决Docker以默认root用户运行生成的文件权限为root的问题:以指定用户启动和进入docker容器第一次用run创建并启动容器,运行命令:docker run -it -u user_name --name container_name -d image_name /bin/bash如果报错:docker: Error response from daemon: linux spec user: unable to find user xxxx: no matching entries _error response from daemon: linux spec user: unable to find user moonton: nohttps://blog.csdn.net/u010797364/article/details/121147581ubuntu安装docker并设置普通用户操作docker_ubuntu server snap.docker 普通用户-CSDN博客文章浏览阅读4k次。一、ubuntu安装docker#更新软件源sudo apt update#安装dockersudo apt install docker.io#基本命令#查看docker服务运行状态sudo systemctl status docker#启动docker服务sudo systemctl start docker#停止docker服务sudo systemctl s..._ubuntu server snap.docker 普通用户
https://blog.csdn.net/huangjinao/article/details/104533683
在vscode中,docker容器以普通用户运行的方式有两种(个人理解,非官方分类):
1.使用docker run -it -u GeneralUserName XXX命令创建容器,那么进入容器时所执行的USER身份则为普通用户。(普通用户身份创建容器)
2.仍旧使用docker run -it XXX命令创建容器,并不指定为普通用户,此时直接启动和进入容器则仍旧为root用户。此时,可以选择采用docker exec -it -u GeneralUserName XXX命令的方式 以普通用户身份进入已经启动的容器内部,并以普通用户身份执行命令。(root身份创建容器,普通用户身份执行容器内部命令)
第1种方式在附加容器时由于无法访问/root目录,因此会附加失败;第2种方式可以正常附加容器,但注意不要直接在附加容器内部执行命令,因此你能附加容器成功的条件是有root权限(即以root身份附加),因此附加后的容器内部本身是以root身份运行的。要保证普通用户身份执行,则必须另开一个终端,以docker exec -u GeneralUserName XXX命令的方式进入该启动的容器,并以普通用户的身份执行容器内部命令。这种做法相比于第1种做法更不安全,需要用户时刻注意自己的操作行为,但胜在 创建 和 执行 两者是身份权限分离的,可以同时以不同的方式进行创建 和 执行 容器,个性化自定义方面比较友好。
有更好的方式欢迎小伙伴们给我评论区留言哈,我这能力也就这样了,想不出☹别的办法了捏。
2846

被折叠的 条评论
为什么被折叠?



