我需要使用docker部署应用程序,而我正在使用Dockerfile。在下面可以找到我的Dockerfile。
# The image is internal, so I only added the rhel:7 part of it
FROM rhel:7
RUN yum install -y java-1.8.0-openjdk.x86_64
VOLUME /tmp
COPY "my-application-[0-9\.]*(-SNAPSHOT)?\.jar" my-application.jar
ENTRYPOINT ["java","-Xms256m","-Xmx512m","-Djavax.net.ssl.trustStore=/var/run/spring/config/cacerts","-Djava.security.egd=file:/dev/urandom","-jar","my-application.jar"]
EXPOSE 8080 8443
由构建过程创建的文件的格式为my-application-1.2.3.jar
或my-application-1.2.3-SNAPSHOT.jar
,在该文件旁边,还生成了一个源文件my-application-1.2.3-sources.jar
。所以我只想复制my-application-1.2.3.jar
。
我尝试使用虚拟文件的正则表达式是:
my-application-[0-9\.]*(-SNAPSHOT)?\.jar
我已经尝试了以下方法,但没有成功:
COPY *.jar my-application.jar
RUN /bin/bash -c 'find . -iregex "\.\/my-application-[0-9\.]*(-SNAPSHOT)?\.jar" -exec cp {} my-application.jar \;'
我有非常基本的Java经验,但是我需要使用docker部署此应用程序。