SpringBoot使用docker部署加载外部配置文件
修改pom.xml文件,把配置文件copy到镜像中
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
| <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> <plugin> <groupId>com.spotify</groupId> <artifactId>docker-maven-plugin</artifactId> <version>1.1.0</version> <executions> <execution> <id>build-image</id> <phase>package</phase> <goals> <goal>build</goal> </goals> </execution> </executions> <configuration> <dockerHost>http://192.168.1.230:2375</dockerHost> <imageName>${project.artifactId}:${project.version}</imageName> <dockerDirectory>src/main/docker</dockerDirectory> <resources> <resource> <targetPath>/</targetPath> <directory>${project.build.directory}</directory> <include>${project.build.finalName}.jar</include> </resource> <resource> <targetPath>/config</targetPath> <directory>${project.build.outputDirectory}</directory> <includes> <include>*.*</include> </includes> </resource> </resources> </configuration> </plugin> </plugins> </build>
|
1.在容器根目录运行jar
dockerfile
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| FROM anapsix/alpine-java:8_server-jre_unlimited
ADD /ebbms-admin-1.0.0-SNAPSHOT.jar /app.jar
ADD /config /config
RUN bash -c 'touch /app.jar'
EXPOSE 8084
ENV LANG='UTF-8' ENV LC_ALL='zh_CN.UTF-8' ENV LC_CTYPE='zh_CN.UTF-8'
ENTRYPOINT ["java","-jar","app.jar","-Dfile.encoding=UTF-8","-Dsun.jnu.encoding=UTF-8"]
MAINTAINER wangruiyu
|
2.在容器中自定义目录运行jar
使用自定义路径:/usr/local/ebbms
设置docker的WORKDIR(工作目录)为自定义路径!
重点:设置工作目录
dockerfile文件
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| FROM anapsix/alpine-java:8_server-jre_unlimited
ADD /ebbms-admin-1.0.0-SNAPSHOT.jar /usr/local/ebbms/app.jar ADD /config /usr/local/ebbms/config
RUN bash -c 'touch /usr/local/ebbms/app.jar'
EXPOSE 8084
ENV LANG='UTF-8' ENV LC_ALL='zh_CN.UTF-8' ENV LC_CTYPE='zh_CN.UTF-8'
WORKDIR /usr/local/ebbms
ENTRYPOINT ["java","-jar","app.jar","-Dfile.encoding=UTF-8","-Dsun.jnu.encoding=UTF-8"]
MAINTAINER wangruiyu
|
3.在容器根目录运行jar,自定义路径存放配置
使用自定义路径:/usr/local/ebbms
在docker容器启动时运行jar包时,使用spring.config.location 指定配置文件路径即可!
dockerfile文件
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| FROM anapsix/alpine-java:8_server-jre_unlimited
ADD /ebbms-admin-1.0.0-SNAPSHOT.jar /usr/local/ebbms/app.jar ADD /config /usr/local/ebbms/config
RUN bash -c 'touch /usr/local/ebbms/app.jar'
EXPOSE 8084
ENV LANG='UTF-8' ENV LC_ALL='zh_CN.UTF-8' ENV LC_CTYPE='zh_CN.UTF-8'
ENTRYPOINT ["java","-jar","app.jar","--spring.config.location=/usr/local/ebbms/config/application.yaml","-Dfile.encoding=UTF-8","-Dsun.jnu.encoding=UTF-8"]
MAINTAINER wangruiyu
|