前言
今天我们来讲下如何使用Docker打包构建Java项目并且完成部署发布。
前期准备,需要安装好docker。
以及一个需要安装好Maven的镜像,可以参考下面的文章。
构建一个包含mvn命令的Java 17基础镜像-CSDN博客
一、打包构建Java项目镜像
1、创建Java项目目录,执行如下命令。
mkdir -p /docker/hello/
cd /docker/hello/
2、创建SpringBoot代码。
3、编写Dockerfile文件,内容如下。
vim Dockerfile
# 使用Alpine Linux搭配OpenJDK 17含Maven的版作为打包镜像
FROM ayzen/openjdk:17-jdk-alpine as builder# 设置工作目录
WORKDIR /www# 复制项目源码和构建脚本到容器工作目录
COPY . /www# 在容器内执行Maven,生成可执行jar文件
RUN mvn clean package -DskipTests# 新建一个更小的基础镜像用于运行
FROM openjdk:17-jdk-alpine# 设置工作目录
WORKDIR /www# 将构建阶段产生的jar文件复制到运行阶段的镜像中
COPY --from=builder /www/target/hello.jar /www/hello.jar# 暴露应用端口
EXPOSE 8080# 设置容器启动时执行的命令
ENTRYPOINT ["java", "-jar", "/www/hello.jar"]
4、构建镜像,执行如下命令。
docker build -t ayzen/hello .
构建正常情况会返回如下内容。
5、至此,Java项目的镜像已构建完成。
二、部署发布Java项目
1、启动Java项目容器,执行如下命令。
docker run -d -p 8080:8080 ayzen/hello
2、测试验证请求,执行如下命令。
curl http://127.0.0.1:8080/hello
正常返回说明Java项目服务已正常运行。
3、至此,Java项目已部署发布完成。
总结
今天讲了如何使用Docker打包构建Java项目并且发布的内容,步骤也比较简单。
1、创建Java项目代码或者拉取Java项目代码,编写Dockerfile文件,构建项目镜像。
2、使用项目镜像运行容器,测试验证服务。
最后因本人能力有限,有什么不对的地方望各位大佬指出好让我改进,多多包含,谢谢大家。