您现在的位置是:首页 >技术杂谈 >SpringBoot项目部署网站首页技术杂谈
SpringBoot项目部署
简介SpringBoot项目部署
文章目录
1.在pom.xml中引入打包插件
<!--打包插件-->
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>2.6.12</version>
<configuration>
<fork>true</fork>
</configuration>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
2.执行打包命令
# 先把以前的东西清理掉再打包
mvn clean package
3.编写生产环境的application-prod.yml配置文件
4.重新打包编译
mvn clean package
5.编写Dockerfile文件打包成镜像
# 指定基础镜像
FROM openjdk:8
# 将打成的jar包复制到镜像中
ADD car-main/target/car-main-1.0-SNAPSHOT.jar app.jar
# 指定镜像启动后运行的命令
ENTRYPOINT java -jar /app.jar --spring.profiles.active=prod
6.使用idea远程连接CentOS7中的Docker
需要关闭CentOS7中的防火墙
7.使用idea执行Dockerfile文件生成镜像
可能遇到的问题
问题1:
Failed to deploy ‘rent-car Dockerfile: Dockerfile’: driver failed programming external connectivity on endpoint rent-car (cb4a1ef725a9675590c6b440733a30d131698cba365fd4aa206b545ca8388db3): (iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 8080 -j DNAT --to-destination 172.17.0.9:8080 ! -i docker0: iptables: No chain/target/match by that name.
(exit status 1))
解决方案:重启Docker
systemctl restart docker
参考
风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。