暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

如何把SpringBoot项目部署到Docker

肥宅与画家 2021-06-25
660

文首

AntzUhl

写在文首,最近疫情严重,做好防护工作不容小觑,全世界的目光都在武汉,但正直春运,人口流动大,病毒潜伏期长,就算你在十八线城市乡村,也不要觉得病毒离你很远。就算身体不适,也不要失去希望,阿富汗有一个节日叫做雅尔达,这一天的黑夜尤为漫长,人们会熬至深夜,等待黎明的到来,恋人们会艰难的忍受黑夜的悠长,等待朝阳升起,带来心中所念之人。

Docker可以说是改变了现代软件行业,化繁为简,与诸多领域完美结合,比如说微服务,Docker让微服务更方便落地,也不用考虑环境配置的问题。

作为微服务中的代表SpringBoot框架,今天我们就来了解一下如何在Docker容器中运行一个SpringBoot应用。

说来其实很简单,只需要在pom.xml中指定docker插件即可。

    <plugin>
    <groupId>com.spotify</groupId>
    <artifactId>docker-maven-plugin</artifactId>
    <version>1.2.0</version>
    <configuration>
    <!-- 镜像名称 -->
    <imageName>zeus/${project.artifactId}</imageName>
    <!-- 基础镜像,运行一个springboot应用只需要基础的java环境就行 -->
    <baseImage>java:8</baseImage>
    <!-- docker启动的时候执行的命令 -->
    <entryPoint>["java", "-jar", "/${project.build.finalName}.jar"]</entryPoint>
    <resources>
    <resource>
    <targetPath>/</targetPath>
    <directory>${project.build.directory}</directory>
    <include>${project.build.finalName}.jar</include>
    </resource>
    </resources>
    </configuration>
    </plugin>


    另外只需要在你的项目中编写所需的代码即可。


    PART

    1


    部署到Docker



    将你的项目复制到Linux主机中。


    使用cd命令进入项目路径,使用maven命令进行打包。

      mvn clean
      mvn package -Dmaven.test.skip=true
      mvn docker:build



      命令执行完毕后可以发现镜像打包成功了。



      使用docker images
      查看。

      可以看到我们打包的zeus/zeus-docker镜像已经存在了,还有一个java的镜像是需要的依赖。

      PART

      2

      运行容器



      使用命令运行容器。

        docker run -d --name zeus-test -p 8080:8080 zeus/zeus-docker

        -d 是指定后台运行 --name是指定容器名称 -p 8080:8080 是指将容器的8080端口映射给宿主机的8080端口 格式为:主机(宿主)端口:容器端口

        运行成功之后,就可以测试我们的接口了。

        文章转载自肥宅与画家,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

        评论