最近博主真的太忙了,之前写了许多文章都没来得及更新,难得今晚能够跟大家见面,无论怎么讲,坚持更新,你们的一键三连是我最大的动力!废话不多说,请往下看:
Spring Boot 工程 Docker 化部署指南
总结下来,步骤大致是:
1. 准备项目结构和配置文件;
2. 编写Dockerfile;
3. 构建镜像;
4. 运行容器并挂载配置;
5. 验证部署
一、项目目录结构:(示例说明 my-springboot-app)
/my-springboot-app
├── src/ # 源代码目录
├── pom.xml # Maven 构建文件
├── Dockerfile # Docker 构建文件
└── config/ # 外部配置文件目录(与 Jar 包同级)
├── application.yml # 主配置文件
├── application-prod.yml # 生产环境配置
└── application-dev.yml # 开发环境配置
二、编写Dockerfile
# 第一阶段:构建 Jar 包
FROM maven:3.8.6-openjdk-17-slim AS build
WORKDIR /app
COPY pom.xml .
RUN mvn dependency:go-offline
COPY src/ src/
RUN mvn package -DskipTests
# 第二阶段:运行环境
FROM openjdk:17-jdk-slim
WORKDIR /app
# 复制 Jar 文件(替换 your-project-name)
COPY --from=build /app/target/*.jar app.jar
# 创建配置文件目录
RUN mkdir -p /app/config
# 设置时区(可选)
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
# 声明挂载目录
VOLUME /app/config
# 健康检查(可选)
HEALTHCHECK --interval=30s --timeout=3s
CMD curl -f http://localhost:8080/actuator/health || exit 1
# 启动命令(优先加载外部配置)
ENTRYPOINT ["java", "-jar", "app.jar",
"--spring.config.location=classpath:/,file:/app/config/"]
三、构建docker镜像
# 进入项目根目录
cd /my-springboot-app
# 构建镜像(注意末尾的 .)
docker build -t my-springboot-app:1.0.0 .
四、创建服务器配置目录
mkdir -p /opt/apps/my-springboot-app/config
- 将以下文件上传至服务器:
- `/opt/apps/my-springboot-app/config/application.yml`
- `/opt/apps/my-springboot-app/config/application-prod.yml`
五、运行容器
docker run -d
--name my-springboot-app
-p 8080:8080
-v /opt/apps/my-springboot-app/config:/app/config
-e SPRING_PROFILES_ACTIVE=prod
--restart=always
my-springboot-app:1.0.0
六、配置验证
# 查看容器日志
docker logs -f my-springboot-app
# 检查健康状态
curl http://localhost:8080/actuator/health
#查看加载配置
curl http://localhost:8080/actuator/env
总结:
本文步骤超级简单,初学者也能完全快速上手,后期我会层层递进,结合docker-compose,或者k8s部署咋们的微服务应用。谢谢大家的观看,喜爱的话请记得一键三连。谢谢观看,再会
© 版权声明
文章版权归作者所有,未经允许请勿转载。
相关文章
暂无评论...
