При использовании docker compose with presto sql image я столкнулся с определенной проблемой.
Если я настрою compose для монтирования тома в существующий каталог в образе, при запуске контейнера все файлы, которые существуют в том же рычаге, что и точка монтирования, исчезают. Все остальные файлы в родительском каталоге исчезают, остается только точка монтирования (с правильным содержимым тома внутри)
My docker -compose.yml выглядит следующим образом:
version: '2.2'
services:
prestosql:
image: prestosql/presto:329
volumes:
- ./src/test/resources/presto/catalog/:/usr/lib/presto/etc/catalog/
Если я exe c a bash в контейнер presto sql и ls the /usr/lib/presto/etc/
Я получаю:
[presto@7df706ccb1bc presto]$ ls -lah /usr/lib/presto/etc/
total 8.0K
drwxr-xr-x 3 root root 4.0K Jan 30 15:12 .
drwxr-xr-x 1 presto presto 4.0K Jan 30 15:12 ..
drwxr-xr-x 4 presto presto 128 Jan 25 18:09 catalog
Однако, если я повторю процедуру без конфигурации тома и ls the /usr/lib/presto/etc/
Я получаю:
[presto@7b2c2178f6e9 /]$ ls -lah /usr/lib/presto/etc/
total 28K
drwxr-xr-x 3 presto presto 4.0K Jan 23 12:22 .
drwxr-xr-x 3 presto presto 4.0K Jan 23 12:22 ..
drwxr-xr-x 2 presto presto 4.0K Jan 23 12:22 catalog
-rw-r--r-- 1 presto presto 178 Jan 23 12:22 config.properties
-rw-r--r-- 1 presto presto 295 Jan 23 12:22 jvm.config
-rw-r--r-- 1 presto presto 57 Jan 23 12:22 log.properties
-rw-r--r-- 1 presto presto 85 Jan 23 12:22 node.properties
Запуск проверки на контейнере показывает только объем на монтировках:
❯ docker inspect -f '{{ .Mounts }}' 7df706ccb1bc
[{bind /blablabla/src/test/resources/presto/catalog /usr/lib/presto/etc/catalog rw true rprivate}]
Это ожидаемое поведение?