springboot项目通过jar包部署到docker


第一步

开放2375端口

项目中pom设置<build>
   <finalName>eureka</finalName>
   <plugins>
       <!--      maven打包插件      -->        <plugin>
           <groupId>org.springframework.boot</groupId>
           <artifactId>spring-boot-maven-plugin</artifactId>
           <!-- 作用:项目打成jar的同时将本地jar包也引入进去 -->            <configuration>
               <includeSystemScope>true</includeSystemScope>
           </configuration>
       </plugin>
       <plugin>
           <groupId>com.spotify</groupId>
           <artifactId>docker-maven-plugin</artifactId>
           <version>1.2.2</version>
           <!--将插件绑定在某个phase执行-->            <executions>
               <execution>
                   <id>build-image</id>
                   <!--将插件绑定在package这个phase上。也就是说,                    用户只需执行mvn package ,就会自动执行mvn docker:build-->                    <phase>package</phase>
                   <goals>
                       <goal>build</goal>
                   </goals>
               </execution>
           </executions>
           <configuration>
               <!--指定生成的镜像名,这里是我们的项目名-->                <imageName>${project.artifactId}</imageName>
               <!--指定标签 这里指定的是镜像的版本,我们默认版本是latest-->                <forceTags>true</forceTags>
               <imageTags>
                   <imageTag>latest</imageTag>
               </imageTags>
               <!--注意 修改成远程服务器地址-->                <dockerDirectory>docker</dockerDirectory>
               <dockerHost>http://192.160.26.118:2375</dockerHost>
               <resources>
                   <resource>
                       <targetPath>/</targetPath>
                       <directory>${project.build.directory}</directory>
                       <include>${project.build.finalName}.jar</include>
                   </resource>
               </resources>
           </configuration>
       </plugin>
       <plugin>
           <groupId>org.apache.maven.plugins</groupId>
           <artifactId>maven-compiler-plugin</artifactId>

           <configuration>
               <source>13</source>
               <target>13</target>
           </configuration>
       </plugin>
   </plugins>
</build>同时删除resources 下的Dockerfie。

第二步

image.png接着执行图中的步骤。然后在项目中的target找到jar包,将该JAR包上传到linux上

第三步

在该目录下创建Dockerfile 文件

     vi Dockerfile

 然后将下面的内容复制到Dockerfile文件中

FROM openjdk:13

MAINTAINER yufeng

ADD eureka.jar zzzeureka.jar

EXPOSE 8800

ENTRYPOINT ["java","-jar","zzzeureka.jar"]这里from后面跟的jdk版本一定要正确,笔者先从hub.docker.com上找到openjdk的正确名字,然后再加到from后面。这里配置也要和pom中

<artifactId>eureka</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>jar</packaging>
<name>eureka</name>name版本一一对应

第四步

输入命令开始构建docker build -t eureka .。遇到

ADD failed: stat /var/lib/docker/tmp/docker-builderXXXXXX: no such file or dir可以考虑把找不到的东西放在与Dockerfile同一个目录下就可以了

第五步

镜像构建成功之后,就可以运行容器了:docker run -d -p 8800:8800 --name eurekai  d5194e8e07b7。

image.png

 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM