Spring Boot项目打包Docker Spring Boot打包Docker镜像

本文介绍了如何在LinuxCentOS系统上,使用SpringBoot和Dockerfile-maven-plugin插件打包SpringBoot应用为Docker镜像。首先确保系统安装了Docker和Maven,然后在pom.xml中添加插件配置,创建Dockerfile,并执行mvn clean package -DskipTests命令打包。接着通过docker images查看镜像,用docker run启动容器并映射端口,最后访问应用确认打包成功。

Spring Boot项目打包Docker Spring Boot打包Docker镜像

一、准备工作

        1、Linux CentOS 系统,已安装好Docker 服务不会点这里

        2、Linux CentOS 系统的Docker服务中,已经安装 JDK 镜像不会点这里

        3、Linux CentOS 系统中,已经安装好 Maven 服务。

二、开始

        1、使用Spring Boot Starter 创建一个普通maven web项目,过程略。(参考这里

        2、pom.xml 添加 dockerfile-maven-plugin 插件

<!-- SpringBoot打包Docker插件 -->
	<plugin>
		<groupId>com.spotify</groupId>
		<artifactId>dockerfile-maven-plugin</artifactId>
		<version>1.4.10</version>
		<executions>
			<execution>
				<id>default</id>
				<goals>
					<goal>build</goal>
					<goal>push</goal>
				</goals>
			</execution>
		</executions>
		<configuration>
			<repository>${project.artifactId}</repository>
			<tag>${project.version}</tag>
			<buildArgs>
				<JAR_FILE>${project.build.finalName}.jar</JAR_FILE>
			</buildArgs>
		</configuration>
	</plugin>

        3、项目路径下,创建 Dockerfile 文件 ,添加如下配置:

    FROM openjdk:latest
	LABEL docker_study="boot"
	EXPOSE 8080
	ARG JAR_FILE
	ADD target/${JAR_FILE} /spring-boot-tourist.jar
	ENTRYPOINT ["java","-jar","/spring-boot-tourist.jar"]

 

 

        4、 项目移动到,装有Docker服务的 Linux CentOS系统中:

        5、执行 mvn clean package -DskipTests 进行打包镜像

         6、 docker images , 查看镜像

         7、  docker run -d -it --name springboot-8080 -p 8080:8080 spring-boot-tourist:0.0.1-SNAPSHOT  ,运行镜像

docker run -d -it --name springboot-8080 -p 8080:8080 spring-boot-tourist:0.0.1-SNAPSHOT

 --name springboot-8080:容器名,自定义 
 -p 8080:8080:端口进行映射,将本地 8080 端口映射到容器内部的 8080 端口
 spring-boot-tourist:0.0.1-SNAPSHOT : 镜像名称:标签名 ; docker images 查看
   

        8、浏览器访问: http://192.168.213.129:8080 ,可正常访问,则打包成功

三、总结

        1、Spring Boot项目,打包Docker镜像,需要做以下准备:

  • CentOS中安装Docker服务
  • Docker服务中,安装JDK镜像
  • CentOS中安装 maven服务

        2、pom.xml 添加 dockerfile-maven-plugin 插件

        3、项目路径下,创建 Dockerfile 文件

        4、了解更多:

         

        5、遗留问题:若使用自己创建的JDK镜像进行打包,报错,无法成功创建镜像

        6、补充 docker 项目命令:

  • 移除镜像: docker rmi 镜像id / 镜像名:[tag]
  • 查看已运行的容器实例: docker ps
  • 查看启动过的容器实例: docker ps -a
  • 关闭容器实例:docker stop 容器id / 容器名
  • 启动容器实例: docker start 容器id / 容器名
  • 移除容器:docker rm 容器id / 容器名

参考资料:https://github.com/spotify/dockerfile-maven

评论 4
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值