Понимание томов Docker - PullRequest
0 голосов
/ 03 июня 2018

Я пытаюсь изучить тома Docker, и я использую centos:latest в качестве базового образа.Когда я пытаюсь запустить команду Docker, я не могу получить доступ к подключенному тому внутри контейнера:

Команда:

sudo docker run -it --name test -v /home/user/Myhostdir:/mydata centos:latest /bin/bash

Ошибка:

[user@0bd1bb78b1a5 mydata]$ ls
ls: cannot open directory .: Permission denied

КогдаЯ пытаюсь ls найти разрешение папки, там написано 1001. Что происходит, и как можно это решить?

drwxrwxr-x.   2 1001 1001    38 Jun  2 23:12 mydata

Моя локальная машина:

[user@xxx07012 Myhostdir]$ pwd
/home/user/Myhostdir
[user@swathi07012 Myhostdir]$ ls -al
total 12
drwxrwxr-x.  2 user user   38 Jun  2 23:12 .
drwx------. 18 user user 4096 Jun  2 23:11 ..
-rw-rw-r--.  1 user user   15 Jun  2 23:12 text.2.txt
-rw-rw-r--.  1 user user   25 Jun  2 23:12 text.txt

1 Ответ

0 голосов
/ 03 июня 2018

Это частично проблема Docker, но в основном это проблема SELinux .Я предполагаю, что вы используете старую 1.x версию Docker.

У вас есть несколько вариантов.Во-первых, вы можете взглянуть на этот пост в блоге , чтобы немного лучше понять проблему и, возможно, использовать упомянутое там исправление.

Или вы можете просто обновить до новой версии Docker.Я тестировал монтирование простого тома в Docker версии 18.03.1-ce:

docker run -it --name test -v /home/chris/test:/mydata centos:latest /bin/bash

[root@bfec7af20b99 /]# cd mydata/
[root@bfec7af20b99 mydata]# ls
test.txt.txt
[root@bfec7af20b99 mydata]# ls -l
total 0
-rwxr-xr-x 1 root root 0 Jun  3 00:40 test.txt.txt
...