欢迎来到站长天空!

其它服务器

当前位置: 主页 > 服务器 > 其它服务器

IDEA集成docker部署springboot项目的全过程

时间:2025-12-24 07:30:04|栏目:其它服务器|点击:

目录
  • 1.IDEA下载docker插件
  • 2.云服务器docker
    • 2.1 docker的安装
    • 2.2 停止docker服务
    • 2.3 docker配置文件修改
    • 2.4 刷新配置文件
    • 2.5 启动docker服务
    • 2.6 防火墙增加2375端口
    • 2.7 阿里云增加安全组规则
    • 2.8 测试远程HTTP连接
  • 3. maven项目打包
    • 3.1 打包插件
    • 3.2 资源文件的打包及打包后的位置
    • 3.3 docker插件
    • 3.4 clean、install和docker build
  • 4.遇到的坑
    • 5.参考

      1.IDEA下载docker插件

      此处不再赘述,和其他插件一样安装

      2.云服务器docker

      说明:本人服务器使用的是centOS 7

      2.1 docker的安装

      https://www.jb51.net/article/213611.htm

      2.2 停止docker服务

      为了防止restart docker服务出现错误,保险起见,最好先停止docker服务,再修改配置文件。

      停止docker之前要先停止正在运行的容器,否则后面启动容器也有可能出错。

      停止运行容器:

      docker stop [container_id]

      然后停止docker服务

      systemctl stop docker

      2.3 docker配置文件修改

      为了使用HTTP方式让IDEA连上服务器上的docker,需修改docker的配置文件,修改内容如下:

      vim /usr/lib/systemd/system/docker.service

      修改Execstart 这行内容,将其替换为以下内容,目的是开放2375端口,能进行HTTP远程连接:

      ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock

      2.4 刷新配置文件

      命令如下:

      systemctl daemon-reload

      测试配置文件是否生效,在服务器端输入如下命令,如果出现JSON字符串内容,则文件生效

      curl http://127.0.0.1:2375/version

      2.5 启动docker服务

      命令如下:

      systemctl restart docker

      2.6 防火墙增加2375端口

      命令如下:

      firewall-cmd --zone=public --add-port=2375/tcp --permanent

      重启防火墙:

      firewall-cmd --reload

      2.7 阿里云增加安全组规则

      这里要注意在实例的页面进入安全组,然后配置规则,开放2375端口

      2.8 测试远程HTTP连接

      在本地浏览器输入 http://127.0.0.1:2375/version ,同理, 如果出现JSON字符串,则能进行HTTP连接。

      到此, 可以用IDEA进行集成dokcer了。

      3. maven项目打包

      3.1 打包插件

      在pom文件中添加springboot打包插件

      
          org.springframework.boot
          spring-boot-maven-plugin
      

      3.2 资源文件的打包及打包后的位置

      除了打包java源文件,还需要将资源文件打包,如xml/yml/properties/html等文件。但要注意html文件打包的位置,要放在META-INF/resources目录,否则启动jar包后,访问不到html页面。

      
          
              src/main/java
              
              
                  **/*.xml
              
              true
          
          
              
              src/main/resources
          
          
              
              src/main/webapp
              META-INF/resources
          
      

      3.3 docker插件

      需要注意两个地方,一是docker镜像名字前面需要有一个前缀,其组成是[前缀]:[镜像名]:[版本号],二是指定镜像名时不得包含大写字母。

      项目信息中name和version都要用到

      org.team
      coolmeeting
      1.0-SNAPSHOT
      coolmeeting
      docker start meetingMS
      
      
          1.8
          team
      
      
      
      
          
              org.springframework.boot
              spring-boot-maven-plugin
          
          
          
              com.spotify
              docker-maven-plugin
              1.0.0
              
                  http://127.0.0.1:2375
                  
                  ${docker.image.prefix}/${project.artifactId}
                  
                  ${project.basedir}/src/main/docker
                  
                      
                          /
                          
                          ${project.build.directory}
                          
                          ${project.build.finalName}.jar
                      
                  
              
          
          
      
          
              org.apache.maven.plugins
              maven-surefire-plugin
              
                  true
              
          
      

      Dockerfile文件如下,注意创建该文件时D要大写 , /meetingMS.jar是别名,方便书写

      FROM java:8
      VOLUME /tmp
      ADD coolmeeting-1.0-SNAPSHOT.jar /meetingMS.jar
      ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/meetingMS.jar"]

      3.4 clean、install和docker build

      先用maven进行clean和install,然后用maven插件docker进行build

      IDEA集成docker部署springboot项目的全过程

      打包后的文件目录:

      IDEA集成docker部署springboot项目的全过程

      启动容器

      IDEA集成docker部署springboot项目的全过程

      设置启动参数

      IDEA集成docker部署springboot项目的全过程

      4.遇到的坑

      • 镜像名称问题(不能含大写字母)
      • springboot配置文件application.yml无法打包
      • 打包后html页面访问不到

      5.参考

      springboot打成jar包无法访问jsp或者html,404错误

      关于yml或者properties文件没有被扫描到

      运行Jar包时指定启动端口

      stackover

      IDEA整合Docker,快捷部署SpringBoot应用

      IDEA集成Docker的快捷部署

      上一篇:解决docker容器与宿主机相差8小时的问题

      栏    目:其它服务器

      下一篇:docker-maven-plugin 插件无法拉取对应jar包问题

      本文标题:IDEA集成docker部署springboot项目的全过程

      本文地址:https://zz.feitang.co/server/33098.html

      广告投放 | 联系我们 | 版权申明

      申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

      如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

      联系QQ:257218569 | 邮箱:257218569@qq.com

      Copyright © 2018-2026 站长天空 版权所有 Powered by EyouCms冀ICP备14023439号