如何将SpringBoot应用通过Docker构建并部署

在本教程中,我们将学习如何使用 Docker 将你的 Spring Boot 应用程序打包成容器镜像,并成功部署到 Docker 容器中。

springboot应用构建目录:

把你的java编译好的程序以下面的目录结构放到linux服务器上

- blog-server.jar (你的jar服务)
- lib (jar服务依赖的jar包,也可以直接打到jar包里面)
- config  
    +|— application.yml
    +|— ...(resource目录下所有文件)

步骤 1: 准备 Dockerfile

首先,在你的 Spring Boot 项目根目录下创建一个名为 Dockerfile 的文件,并添加以下内容:

# 使用 Java 8 镜像作为基础镜像
FROM openjdk:8-jre

# 将 Java 应用的 JAR 文件复制到容器中
COPY blog-server.jar /blog-server.jar
COPY config /config
COPY lib /lib

# 设置容器启动时运行的命令
CMD ["java",  "-Dloader.path=config,lib", "-jar", "blog-server.jar"]

blog-server.jar 替换为你的 Spring Boot 应用程序的实际 JAR 文件名。

步骤 2: 构建 Docker 镜像

在命令行中执行以下命令来构建 Docker 镜像:

docker build -t blog-server:v1.0.0 .

这将使用 Dockerfile 中的指令构建名为blog-server 的 Docker 镜像,v1.0.0是你的镜像版本号(可任意)。

步骤 3: 运行容器

docker命令的方式

运行以下命令启动容器:

docker run -d -p 8080:8080 blog-server

此命令会将宿主机的 8080 端口映射到容器的 8080 端口,并在后台启动名为 blog-server 的容器。

docker-compose的方式:

在任意目录下创建一个docker-compose.yml,并加入以下内容:

version: '3.8'

services:
  app:
    image: blog-server:v1.0.0
    ports:
      - "8080:8080"
    volumes:
      - ./config:/config  #将配置文件放到宿主机的目录上并挂在到docker容器里,方便更改
    container_name: my-blog-server
    restart: unless-stopped

启动容器:

docker-compose up -d 
# 查看所有启动的容器服务
docker ps
# 查看你的docker服务日志 
docker logs -f  镜像id

步骤 4: 验证部署

打开浏览器并访问 http://localhost:8080,如果一切正常,应该可以看到你的 Spring Boot 应用程序在 Docker 容器中运行。

后面会写一篇文章教大家如何将docker镜像推送到docker私有仓库,在其他机器上直接通过docker pull的方式拉取并部署,从而完成统一构建发布部署的整个流程。

总结

本教程介绍了如何使用 Docker 将 Spring Boot 应用程序打包为容器镜像,并成功部署到 Docker 容器中。这使得应用程序的部署更加简单和可移植。通过遵循以上步骤,你可以轻松地将你的 Spring Boot 应用程序部署到 Docker 容器中。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Memory_2020

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值