Объем не отражает данные - PullRequest
0 голосов
/ 30 марта 2020

Когда я создавал свою установку следующим образом:

sudo docker run -d --name myBlog -p 3001:2368 -e url=http://xxxx.com -v /var/www/myBlog/:/var/lib/ghost --restart always ghost

У меня было впечатление, что я определяю, что то, что когда-либо на /var/lib/ghost будет доступно в /var/www/myBlog/, но кажется, что это не случай, когда я проверяю на /var/www/myBlog/ есть пустая папка. Я создал новый пост, чтобы он мог иметь некоторые данные, но там ничего нет. Где именно хранятся данные? И есть ли способ получить доступ к своему текущему изображению, которое я использую для просмотра файлов внутри? Я попробовал sudo docker run -it ghost, но это возвращает меня к базовому образу, а не к тому, который я использую.

Ответы [ 2 ]

0 голосов
/ 30 марта 2020

Пожалуйста, запустите приведенную ниже команду, и вы сможете увидеть файлы в целевой директории

docker run -d  -e url=http://xxxx.com --name some-ghost -p 3001:2368 -v "$(pwd)/target":/var/lib/ghost/content ghost:1-alpine
0 голосов
/ 30 марта 2020

Объемы работают наоборот. Источник отображается в контейнере, смонтирован поверх того, что существует в этом каталоге внутри контейнера. Когда вы монтируете поверх существующего каталога в Linux, родительская файловая система в этом месте больше не видна.

Это означает, что вы увидите содержимое каталога хоста внутри контейнера. Обратите внимание, что это также включает разрешения файловой системы и владение uid / gid.

Именованные тома (не используемый здесь том хоста) также содержат шаг инициализации пустого тома при создании контейнера, копируя содержимое изображения в том. перед монтажом. Он не изменит существующий том.

...