Использование одних и тех же Docker разрешений для файлов изображений различается от машины к машине - PullRequest
0 голосов
/ 29 мая 2020

У меня проблема, что я вообще не могу гр asp. Я запускаю свой конвейер Jenkins в контейнере Docker на главном узле. Теперь я добавил еще один узел и тоже хочу запустить конвейер там.

Однако, используя одно и то же изображение, я получаю разные права доступа к файлам в контейнере:

### master
> docker image ls node:10.20.1-stretch
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
node                10.20.1-stretch     c5f1efe092a0        13 days ago         912MB
> docker run --rm -ti -u 1000:1000 node:10.20.1-stretch ls -la /home/node
total 20
drwxr-xr-x 2 1000 1000 4096 May 15 20:31 .
drwxr-xr-x 3    0    0 4096 May 15 20:31 ..
-rw-r--r-- 1 1000 1000  220 May 15  2017 .bash_logout
-rw-r--r-- 1 1000 1000 3526 May 15  2017 .bashrc
-rw-r--r-- 1 1000 1000  675 May 15  2017 .profile

### node 1
> docker image ls node:10.20.1-stretch
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
node                10.20.1-stretch     c5f1efe092a0        13 days ago         912MB
> docker run --rm -ti -u 1000:1000 node:10.20.1-stretch ls -la /home/node
total 20
drwxr-xr-x 2 0 0 4096 May 26 05:42 .
drwxr-xr-x 1 0 0 4096 May 26 05:42 ..
-rw-r--r-- 1 0 0  220 May 26 05:42 .bash_logout
-rw-r--r-- 1 0 0 3526 May 26 05:42 .bashrc
-rw-r--r-- 1 0 0  675 May 26 05:42 .profile

Я наблюдал аналогичное поведение для каталога /tmp, который имеет chmod 1777 на главном и 1755 на узле 1.

# master
> docker -v 
Docker version 19.03.9, build 9d988398e7
> dockerd -v 
Docker version 19.03.9, build 9d988398e7

# node 1
> docker -v
Docker version 19.03.10, build 9424aeaee9
> dockerd -v
Docker version 19.03.10, build 9424aeaee9

Я предполагаю, что неправильное поведение на node 1, так как каталог /home/node и все его дочерние элементы принадлежат root:root там, но тот же каталог принадлежит node:node на мастере. Однако я уже обновил версию Docker на узле 1 с 19.03.8 до 19.03.10, и ничего не изменилось.

Есть ли что-то, чего я не понимаю в контейнерах Docker? Я работал с ними некоторое время, но никогда не наблюдал такого поведения.

1 Ответ

0 голосов
/ 29 мая 2020

Я изменил драйвер хранилища с overlay2 на aufs. Теперь у меня есть правильные разрешения.

...