使用Docker部署打包发布springboot项目

下面我来详细讲解使用Docker部署打包发布Spring Boot项目的完整攻略,包含两条示例说明。

准备工作

在开始前需要先准备以下工作:

  • 安装Docker
  • 安装Maven
  • 编写Spring Boot项目
  • 安装docker-maven-plugin

这里就不再赘述Docker和Maven的安装过程,若还未安装可自行搜索相关教程。

使用Docker构建镜像和容器

  1. 新建Dockerfile文件

在Spring Boot项目的根目录下新建Dockerfile文件,文件内容如下:

FROM openjdk:8-jdk-alpine
VOLUME /tmp
ADD target/{your project jar name}.jar {your project jar name}.jar
RUN sh -c 'touch {your project jar name}.jar'
ENV JAVA_OPTS=""
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/{your project jar name}.jar"]

其中,{your project jar name}需要替换为你的Spring Boot项目启动后的Jar包名称。

  1. 在命令行中创建镜像

在Spring Boot项目的根目录下,执行以下命令创建Docker镜像:

docker build -t {your docker image name} .

其中,{your docker image name}应为你需要创建的镜像名称。

  1. 运行容器

在创建镜像完成后,执行以下命令运行容器:

docker run -d -p {your port}:8080 --name {your container name} {your docker image name}

其中,{your port}为你需要将容器映射到本地的端口号,{your container name}为你需要创建的容器名称。

使用Maven和docker-maven-plugin插件构建镜像

  1. 新建Dockerfile文件

同样,在Spring Boot项目的根目录下新建Dockerfile文件,文件内容如下:

FROM openjdk:8-jdk-alpine
VOLUME /tmp
ADD {your project jar name}.jar {your project jar name}.jar
RUN sh -c 'touch /{your project jar name}.jar'
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/{your project jar name}.jar"]
  1. 添加docker-maven-plugin插件

在pom.xml文件中添加docker-maven-plugin插件,如下:

<build>
  <plugins>
    <plugin>
      <groupId>com.spotify</groupId>
      <artifactId>docker-maven-plugin</artifactId>
      <version>1.1.0</version>
      <configuration>
        <imageName>{your docker image name}</imageName>
        <dockerDirectory>src/main/docker</dockerDirectory>
        <resources>
          <resource>
            <targetPath>/</targetPath>
            <directory>${project.build.directory}</directory>
            <include>${project.build.finalName}.jar</include>
          </resource>
        </resources>
      </configuration>
    </plugin>
  </plugins>
</build>

其中,{your docker image name}应为你需要创建的镜像名称。

  1. 在命令行中创建镜像

在执行构建命令时,加上dockerfile:build参数即可在Maven的构建流程中添加Docker镜像构建的过程,命令如下:

mvn clean package dockerfile:build
  1. 运行容器

与上一种方法相同,在构建完成后运行容器的命令为:

docker run -d -p {your port}:8080 --name {your container name} {your docker image name}

以上就是使用Docker部署打包发布Spring Boot项目的两种示例,希望可以帮助到您。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:使用Docker部署打包发布springboot项目 - Python技术站

(0)
上一篇 2023年5月16日
下一篇 2023年5月16日

相关文章

  • Docker 制作tomcat镜像并部署项目的步骤

    Docker是一种流行的容器化平台,可以让开发者们更加轻松地部署、运行、管理应用程序。 制作Tomcat镜像并部署项目可以分为以下步骤: 第一步:安装Docker 首先,需要在本地环境或服务器上安装Docker。具体安装步骤可以参考Docker官网文档。 第二步:编写Dockerfile文件 创建一个Dockerfile文件,编写Tomcat镜像的构建规则。…

    Docker 2023年5月16日
    00
  • Docker使用镜像仓库的方法

    使用Docker时,我们经常需要使用镜像仓库存储和管理自己的镜像文件。以下是使用镜像仓库的方法的详细解释。 创建仓库 在使用Docker镜像仓库之前,我们需要先创建一个。我们可以使用开源软件 docker-registry 或 harbor 来创建私有仓库。这里我们以 docker-registry 为例,在Linux系统上安装: sudo apt-get …

    Docker 2023年5月16日
    00
  • Docker Cloud实现部署应用操作详解

    下面我会详细讲解“Docker Cloud实现部署应用操作详解”的完整攻略,包含两条示例说明。 Docker Cloud实现部署应用操作详解 什么是Docker Cloud? Docker Cloud是Docker公司推出的Docker容器云平台,旨在帮助用户更轻松地管理和部署Docker容器应用。Docker Cloud可以帮助用户在云端快速创建、部署和运…

    Docker 2023年5月16日
    00
  • 谈谈我对docker的理解

    接下来我将详细讲解“谈谈我对docker的理解”的完整攻略,包括以下几个方面: 什么是Docker? Docker的优点是什么? Docker的使用示例1:搭建一个web应用 Docker的使用示例2:快速部署应用 什么是Docker? Docker是一种虚拟化技术,它可以帮助开发者将应用打包成一个Docker镜像文件,并在不同的系统上部署这个镜像文件。使用…

    Docker 2023年5月16日
    00
  • 简单谈谈Docker镜像的使用方法

    下面我就来详细讲解“简单谈谈Docker镜像的使用方法”的完整攻略。 什么是Docker镜像 Docker 镜像是一个轻量级、独立、可执行的软件包,用于打包代码、运行时环境、系统工具和依赖库等所有运行一个应用所需的内容。 Docker镜像的使用方法 1. 获取镜像 获取 Docker 镜像有两种方式,一种是从 Docker 镜像仓库拉取,一种是从本地导入。以…

    Docker 2023年5月16日
    00
  • Docker Learning Notes

     是什么 问题:为什么会有docker出现 一款产品从开发到上线,从操作系统,到运行环境,再到应用配置。作为开发+运维之间的协作我们需要关心很多东西,这也是很多互联网公司都不得不面对的问题,特别是各种版本的迭代之后,不同版本环境的兼容,对运维人员都是考验 Docker之所以发展如此迅速,也是因为它对此给出了一个标准化的解决方案。 环境配置如此麻烦,换一台机器…

    Docker 2023年4月11日
    00
  • Docker安装和简单使用入门教程

    下面我将为您详细讲解 Docker 安装和简单使用入门教程,包含两个实际示例。 Docker 安装 要使用 Docker,需要先在您的机器上安装 Docker。 Docker 目前支持多种操作系统环境,如 Linux, macOS, Windows 等。在不同环境下,Docker 的安装方式略有不同。下面以 Ubuntu 为例,介绍 Docker 的安装方法…

    Docker 2023年5月16日
    00
  • Docker 自定义网络

    1、创建自定义网络 docker network create -d bridge –subnet 172.25.0.0/16 network_name 2、redis docker 添加到网络 docker run -it -v /myredis/etc/redis/redis.conf:/usr/etc/redis/redis.conf –netwo…

    Docker 2023年4月16日
    00
合作推广
合作推广
分享本页
返回顶部