Я хочу построить образ докера. И я бегу
docker build --build-arg project_file_name=account.jar -t account:1.0 .
Файл Docker выглядит так (# 1)
FROM anapsix/alpine-java:8u172b11_server-jre
ARG project_file_name
MAINTAINER jim
COPY src/${project_file_name} /home/${project_file_name}
CMD java -jar /home/${project_file_name}
Если жестко закодировать переменную, она будет выглядеть так (# 2)
FROM anapsix/alpine-java:8u172b11_server-jre
MAINTAINER jim
enter code here
COPY src/account.jar /home/account.jar
CMD java -jar /home/account.jar
После того, как я построю изображение с # 1 и # 2
Используя # 1, когда я запускаю Docker, Docker сообщает мне, что не может найти указанный файл JAR
Используя # 2, когда я запускаю docker, docker может правильно выполнить файл java jar.
Для меня и № 1, и № 2 одинаковы. Просто # 1 использует переменную build-arg, а # 2 жестко кодирует значение. Я считаю, что способ, которым я использую build-args, неверен. Кто-нибудь может мне помочь?
Привет