将springboot项目部署到Linux服务的docker容器中
将springboot项目打包成jar包
1.在你的maven项目中的pom.xml文件中添加代码生成maven插件
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
<configuration>
<classifier>spring-boot</classifier>
<mainClass>
com.QiaoGG.TencentLoveApplication
</mainClass>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
其中的mainClass里面的内容就是你的启动类。根据每个人的项目情况不同需要自己定义
2. 在你的maven管理器中找到Lifecycle中先运行clean在运行package这样你就能在你的项目文件夹target中生成xxx.spring-boot.jar包的文件
生成jar后可以在本地试下看看是否运行成功 java -jar xxx-spring-boot.jar
在本地生成docker的images
- 创建dockeer文件夹创建Dockerfile文件,文件名称不要错误,然后添加内容信息
FROM openjdk:8
MAINTAINER QiaoGG
COPY QiaoGGTencent-1.0-SNAPSHOT-spring-boot.jar /SpringBootLove.jar
ENTRYPOINT ["java", "-jar" ,"/SpringBootLove.jar"]
其中QiaoGGTencent-1.0-SNAPSHOT-spring-boot.jar是你之前生成的jar包名称和位置,后面的/SpringBootLove.jar是生成在docker容器中的名称。
2. 之后运行docker build -t xx(image_name) .
其中xx(image_name)就是你要生成的镜像名称 而 . 表示当前文件夹的意思,最后docker images 就可以看到生成的镜像了
将docker的image打包并上传到服务器上运行
1.将本地的image变成tar使用命令docker save -o xx.tar xxx
其中xx.tar就是你要打包tar的名称 xxx就是要打包的镜像名称
2.将tar上传到腾讯云服务器后使用命令docker load < xx.tar
这样就可以将tar包解压成image,通过docker images可以看到了
3.根据image生成容器运行docker run -d -p 8080:8080 --name 容器名 镜像名
这样就可以生成运行的容器通过docker ps可以查看
4.腾讯云服务器需要开启规则端口,根据每个人的设置端口不同将对应的端口开放,这样就可以访问了。
至此整个过程就已经完成了。