Я пытаюсь создать среду вертексного докера на основе безударного Java-образа.Когда я запускаю контейнер Docker, он не находит класс, который пытаюсь выполнить.
Однако, когда я запускаю команду в контейнере, она работает просто отлично.
Вот мойDockerfile
FROM gcr.io/distroless/java:debug
ADD vert.x-3.7.0.tar.gz /usr/
ENTRYPOINT ["java","-cp", "'/usr/vertx/lib/*'", "io.vertx.core.Launcher", "version"]
CMD ["-start"]
Когда я запускаю контейнер, я получаю следующую ошибку:
Error: Could not find or load main class io.vertx.core.Launcher
Итак, я запустил образ с помощью следующей команды:
docker run --entrypoint=sh -ti <image_name>
который дает оболочку busybox.Затем я ввел в командной строке следующее:
java -cp '/usr/vertx/lib/*' io.vertx.core.Launcher version
И все заработало нормально, выдав мне следующий вывод
Apr 07, 2019 7:20:18 PM io.vertx.core.impl.launcher.commands.VersionCommand
INFO: 3.7.0
Я ожидал того же поведения от комбинации ENTRYPOINT + CMD.Я просто не могу понять, почему этот комбо не работает.