У меня есть изображение с Dockerfile со следующими инструкциями: -
FROM openjdk:8-jre
VOLUME ["/hygieia/logs"]
RUN mkdir /hygieia/config
EXPOSE 8080
ENV PROP_FILE /hygieia/config/application.properties
WORKDIR /hygieia
COPY target/*.jar /hygieia
COPY docker/properties-builder.sh /hygieia/
CMD ./properties-builder.sh &&\
java -Djava.security.egd=file:/dev/./urandom -jar *.jar --spring.config.location=$PROP_FILE
Теперь я хочу использовать его в качестве базового изображения и пометить его, как, скажем, что-то вроде hygieiaapi: последний и создайте новое изображение, используя его, но перезаписав файл строителя свойств как новая инструкция. Вот что я пытаюсь сделать: -
FROM hygieiaapi:latest
COPY docker/properties-builder.sh /hygieia/
ENTRYPOINT ./properties-builder.sh &&\
java -Djava.security.egd=file:/dev/./urandom -jar *.jar --spring.config.location=$PROP_FILE
Поэтому я пытаюсь заменить файл properties-builder. sh в каталоге / hygieia на мой новый файл properties-builder. sh file, а затем используйте ENTRYPOINT для сброса CMD в базовом изображении. Я не уверен, сможет ли инструкция COPY скопировать файл properties-builder. sh и заменить его уже существующим (из базового образа), или это будет конфликтовать. Я не построил и не проверил это и хочу сначала получить разъяснения. Пожалуйста, предложите.