dev-ops 第5节:服务镜像构建和容器部署
Maven插件
1 | <plugin> |
这个<plugin>
标签定义了一个 Maven 插件,名为 spring-boot-maven-plugin。这个插件是 Spring Boot 提供的,用于支持 Spring Boot 项目的构建和打包。 具体来说,这个插件的功能包括:
<mainClass>chatgpt.Application</mainClass>
:这个配置指定了应用程序的主类,也就是包含 main 方法的类。当你运行打包后的 JAR 文件时,这个类的 main 方法会被执行。<goal>repackage</goal>
:这个目标会在构建过程中被执行。repackage 目标会创建一个可执行的 JAR 文件,这个 JAR 文件包含了你的应用程序和所有的依赖库。这样,你就可以使用 java -jar 命令来运行你的应用程序,而不需要单独安装任何依赖库。
总的来说,spring-boot-maven-plugin 插件让你可以很容易地创建和运行 Spring Boot 应用程序的可执行 JAR 文件。
Maven操作
插件添加后刷新,然后mvn clean+mvn install

完成后进行package

之后我们会在项目根目录下得到target文件夹,将其中的jar
包(不带original
)的拷出来放到linux服务器上的某个文件夹,我这里放到了/data/java/chatgpt-api
文件夹中,在放到远程服务器之前可以先在本地使用java -jar
命令运行一下试试,注意jdk版本是1.8。
Docker部分
首先在这个文件夹下建立Dockerfile文件
写入如下内容
1 | # 使用官方的 Java 运行时作为基础镜像 |
之后运行指令构建镜像
1 | docker build -t chatgpt-api . |
之后启动镜像
1 | docker run -d -p 8080:8080 --name chatgpt-api chatgpt-api |
此时用docker ps -a
查看是否正常运行
此时我们可以使用postman
等工具进行测试
测试成功!