首页 > 解决方案 > 将 docker 搬回家后,容器中的权限被拒绝

问题描述

最初 docker 文件系统位于 /var/lib/docker 一切正常,但由于空间限制,我们不得不移动到 /Proj/docker 并且 docker 服务正在运行。

Active: active (running) since Thu 2019-03-28 09:36:59 UTC; 22h ago Docs: https://docs.docker.com Main PID: 27007 (dockerd) Tasks: 27 Memory: 726.5M CGroup: /system.slice/docker.service └─27007 /usr/bin/dockerd --selinux-enabled -g /Proj/docker

但在那之后,我被拒绝了许可

  [user@host]# sudo docker run  -it oraclelinux:7-slim bash
 bash-4.2# ls
  ls: cannot open directory : Permission denied

**unless I am running  with privilage flag set to true** 

  [user@host]# sudo docker run  -it --privileged=true  oraclelinux:7-slim bash
 bash-4.2# ls
bin  boot  dev  etc  home  lib  lib64  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var

Can you please help to resolve this  

please find additional info

[user@host ~]$ systemctl status docker
● docker.service - Docker Application Container Engine
   Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled)
  Drop-In: /etc/systemd/system/docker.service.d
           └─docker-sysconfig.conf, https-proxy.conf
   Active: active (running) since Thu 2019-03-28 09:36:59 UTC; 1 day 2h ago
     Docs: https://docs.docker.com
 Main PID: 27007 (dockerd)
    Tasks: 27
   Memory: 726.9M
   CGroup: /system.slice/docker.service
           └─27007 /usr/bin/dockerd --selinux-enabled -g /Proj/docker

		   


[user@host ~]$ cat /etc/systemd/system/docker.service.d/docker-sysconfig.conf
[Service]
ExecStart=
EnvironmentFile=-/etc/sysconfig/docker
EnvironmentFile=-/etc/sysconfig/docker-storage
EnvironmentFile=-/etc/sysconfig/docker-network
ExecStart=/usr/bin/dockerd \
          $OPTIONS \
          $DOCKER_STORAGE_OPTIONS \
          $DOCKER_NETWORK_OPTIONS \
          $INSECURE_REGISTRY \
          -g /Proj/docker
		  
		  
[user@host ~]$ cat /etc/systemd/system/docker.service.d/https-proxy.conf
[Service]
Environment="HTTPS_PROXY=http://proxyip:port"



[user@host~]# ls -lrth /Proj/docker
total 56K
drwx------.  4 root root 4.0K Mar 22 07:42 plugins
drwx------.  3 root root 4.0K Mar 22 07:42 image
drwx------.  2 root root 4.0K Mar 22 07:42 volumes
drwx------.  2 root root 4.0K Mar 22 07:42 trust
drwxr-x---.  3 root root 4.0K Mar 22 07:42 network
drwx------.  2 root root 4.0K Mar 22 07:42 swarm
drwx------.  2 root root 4.0K Mar 22 07:42 builder
drwx------.  4 root root 4.0K Mar 22 07:42 buildkit
drwx------.  2 root root 4.0K Mar 28 09:36 runtimes
drwx------.  2 root root 4.0K Mar 28 13:02 tmp
drwx------. 33 root root  12K Mar 29 07:45 overlay2
drwx------.  6 root root 4.0K Mar 29 07:45 containers

标签: dockerdockerfiledocker-machine

解决方案


  1. 进行复制时,请使用“-p”选项来保留属性。这解决了我这边的问题。
  2. 确保您的目标分区没有设置“nosuid”选项。检查 /etc/fstab。否则,您将遇到其他权限问题。https://github.com/wodby/docker4drupal/issues/388

现在所有的权限问题都没有了。


推荐阅读