Hier hat das, was ich tun:Erlaubnis in einem selbst Docker verweigert Behälter, wenn der Benutzer die Rechte
$ docker run -it --rm tomcat:8.5-alpine sh
/usr/local/tomcat # adduser -D -g '' -u 1000 user
/usr/local/tomcat # chown -R user:user $CATALINA_HOME
/usr/local/tomcat # su user -c 'catalina.sh run'
sh: catalina.sh: Permission denied
/usr/local/tomcat # echo $CATALINA_HOME
/usr/local/tomcat
/usr/local/tomcat # ls -la $CATALINA_HOME
total 128
drwxr-xr-x 20 user user 4096 Dec 4 00:47 .
drwxr-xr-x 10 root root 4096 Dec 4 00:47 ..
-rw-r----- 1 user user 57092 Nov 3 21:16 LICENSE
-rw-r----- 1 user user 1723 Nov 3 21:16 NOTICE
-rw-r----- 1 user user 7063 Nov 3 21:16 RELEASE-NOTES
-rw-r----- 1 user user 15946 Nov 3 21:16 RUNNING.txt
drwxr-x--- 2 user user 4096 Dec 4 00:47 bin
drwx------ 2 user user 4096 Dec 4 00:47 conf
drwxr-xr-x 4 user user 4096 Dec 4 00:47 include
drwxr-x--- 2 user user 4096 Dec 4 00:47 lib
drwxr-x--- 2 user user 4096 Nov 3 21:14 logs
drwxr-xr-x 4 user user 4096 Dec 4 00:47 native-jni-lib
drwxr-x--- 2 user user 4096 Dec 4 00:47 temp
drwxr-x--- 12 user user 4096 Dec 4 00:47 webapps
drwxr-x--- 2 user user 4096 Nov 3 21:14 work
/usr/local/tomcat # su user -c 'ls -la /usr/local/tomcat/bin'
ls: can't open '/usr/local/tomcat/bin': Permission denied
total 0
/usr/local/tomcat # su user -c 'ls -la /usr/local/tomcat/include'
total 12
drwxr-xr-x 4 user user 4096 Dec 4 00:47 .
drwxr-xr-x 20 user user 4096 Dec 4 00:47 ..
drwxr-xr-x 2 user user 4096 Nov 17 23:45 apr-1
Ich verstehe nicht, warum meine neu erstellte Benutzer user
nicht /usr/local/tomcat/bin
zugreifen kann, während er zugreifen kann /usr/local/tomcat/include
: user
hat alle & Gruppe die Rechte des Benutzers über diese bin
Ordner ...
ich die gleichen Ergebnisse haben, wenn ich Docker lauch mit --privileged=true
(docker run --privileged=true -it --rm tomcat:8.5-alpine sh
), und dieses Docker Bild scheint nicht SELinux alszu verwendengibt den Fehler ash: setenforce: not found
.
Ich benutze Docker Version 1.12.3, build 6b644ec
auf Ubuntu 14.04.5 LTS
.
Entspricht dies einer bug in Docker with AUFS driver?
Haben nicht Sie noch keine Lösung gefunden? – rideronthestorm
@rideronthestorm leider nein, ich lief schließlich Tomcat als root: https://github.com/anthony-o/SwinGifts/blob/master/run_with_docker.sh#L89. Ich denke, es liegt an einem Fehler in Docker mit AUFS-Treiber: https://github.com/moby/moby/issues/24660 –
@ rideronthestorm oder vielleicht in Ihrem Fall ist es ein "chmod THEN Chown" Problem? siehe https://github.com/moby/moby/issues/6047#issuecomment-270156862 –