SpringBoot Maven專案構建Docker映象
阿新 • • 發佈:2018-12-23
使用Maven構建Docker映象外掛:
pom.xml 檔案,新增外掛
<plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> <plugin> <groupId>com.spotify</groupId> <artifactId>dockerfile-maven-plugin</artifactId> <version>1.4.0</version> <configuration> <repository>test/projectName</repository> <tag>${project.version}</tag> <buildArgs> <!--此處是SpringBoot生成jar包的位置,使用變數JAR_FILE標識,可在Dockerfile中引用--> <JAR_FILE>target/${project.build.finalName}.jar</JAR_FILE> </buildArgs> </configuration> <dependencies> <dependency> <groupId>org.codehaus.plexus</groupId> <artifactId>plexus-archiver</artifactId> <version>3.4</version> </dependency> <dependency> <groupId>javax.activation</groupId> <artifactId>javax.activation-api</artifactId> <version>1.2.0</version> </dependency> </dependencies>
根目錄下,新建Dockerfile:
FROM openjdk:8
LABEL maintainer="LiaoDaShuai"
WORKDIR /
ARG JAR_FILE
ADD ${JAR_FILE} app.jar
EXPOSE 8080
ENTRYPOINT ["java","-jar","app.jar"]
使用構建命令:
mvn install dockerfile:build -Dmaven.test.skip=true
比較簡單,上面的<JAR_FILE>標籤是環境變數,可以在Dockerfile中引用到,當版本更改時,就不必手動去Dockerfile裡改了,其他引數就不解釋過多了。
待構建命令執行完了,即可使用docker images 檢視到構建成功的映象。
使用命令啟動該映象測試。
docker run -p 8080:8080 -d test/projectName:1.0.0
使用宿主機的8080埠,訪問測試。