Docker: том Docker недоступен внутри контейнера - PullRequest
0 голосов
/ 01 октября 2019

У меня есть контейнер, выполняющий процесс Java и записывающий журналы Java в определенный том, объявленный внутри контейнера в Dockerfile:

Dockerfile:

FROM myRegistry/jdk:1.8.181 
VOLUME /opt/logs
ENTRYPOINT ["java",","/opt/application/myapp.jar", "--spring.profiles.active=server"]

Как вы можете видеть, я объявляю этот объем /opt/logs внутри контейнера. (внутри моего java-приложения эта папка используется пользователем при входе в систему для записи ошибок)

Но при запуске контейнера через несколько секунд происходит сбой, говоря, что нет доступа к этой папке "permission denied":

Caused by: java.lang.IllegalStateException: Logback configuration error detected:
ERROR in ch.qos.logback.core.rolling.RollingFileAppender[FILE] - openFile(/opt/logs/myapp.log,true) call failed. java.io.FileNotFoundException: /opt/logs/myapp.log (Permission denied)
        at org.springframework.boot.logging.logback.LogbackLoggingSystem.loadConfiguration(LogbackLoggingSystem.java:153)
        at org.springframework.boot.logging.AbstractLoggingSystem.initializeWithSpecificConfig(AbstractLoggingSystem.java:56)
        at org.springframework.boot.logging.AbstractLoggingSystem.initialize(AbstractLoggingSystem.java:46)
        at org.springframework.boot.logging.logback.LogbackLoggingSystem.initialize(LogbackLoggingSystem.java:106)
        at org.springframework.boot.logging.LoggingApplicationListener.initializeSystem(LoggingApplicationListener.java:266)
        ... 18 more

Мне удалось получить доступ к контейнеру до того, как он опустился, чтобы увидеть разрешения:

[myuser@8d39ada92190 opt]$ ll
total 49100
-rwxrwxrwx. 1 myuser mygroup 50273298 Sep 19 15:57 myapp.jar
drwxr-xr-x  2  65534   65534     4096 Oct  1 13:52 logs

Я заметил, что папка "logs" не является обычной для обычного пользователя, и группа (myuser / mygroup) но с другими странными 65534

Есть идеи ??

...