第一步
开放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。
第二步
接着执行图中的步骤。然后在项目中的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。