1. 程式人生 > >Spring Boot專案與Docker整合完成打包,打映象及推送至映象庫的功能

Spring Boot專案與Docker整合完成打包,打映象及推送至映象庫的功能

Spring Boot與Docker整合完成一站式打包到推送至映象庫,減少部署的過程,下面主要來介紹一下,如何整合Docker:

1.在Spring Boot專案的pom.xml檔案中做以下配置:

<build>
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
				<configuration>
					<executable>true</executable>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<configuration>
					<source>1.7</source>
					<target>1.7</target>
				</configuration>
		    </plugin>
			<plugin>
				<groupId>com.spotify</groupId>
				<artifactId>docker-maven-plugin</artifactId>
				<version>0.4.11</version>
				<configuration>
					<imageName>${docker.image.prefix}/${project.artifactId}</imageName>
					<image>hub.com/gitlabapi/${docker.image.prefix}/${project.artifactId}</image>
					<dockerDirectory>src/main/docker</dockerDirectory>
					<resources>
						<resource>
							<targetPath>/</targetPath>
							<directory>${project.build.directory}</directory>
							<include>${project.build.finalName}.jar</include>
						</resource>
					</resources>
				</configuration>
			</plugin>
		</plugins>
	</build>

2.在專案中建立一個source folder,名稱可以為src/main/docker,在該資料夾中新增Dockerfile檔案,內容如下:

FROM hub.com/jre7:1-cqdc
VOLUME /tmp
ADD gitlab-api-1.0.0.jar app.jar
RUN sh -c 'touch /app.jar'
RUN sh -c 'sudo ln -s /app.jar /etc/init.d/gitlabapi'
ENV JAVA_OPTS=""
ENTRYPOINT [ "sh", "-c", "/etc/init.d/gitlabapi start" ]