DockerMaven插件快速部署微服务

1.为什么要学习DockerMaven插件?

因为当微服务过多,手动拷贝war包上传到服务器并拷贝jdk的容器,会非常麻烦,同时也会很容易出错..所以学习dockermaven来自动部署微服务,从而避免这一系列问题.....

2.maven插件自动部署步骤

1.修改宿主机的配置,让其可以远程访问

vi /lib/systemd/system/docker.service

添加的内容为

-H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock

修改后为图下 

wq 保存退出

2 刷新配置,重启服务

systemctl daemon-reload
systemctl restart docker

3.在工程pom添加配置

  <build>
        <finalName>app</finalName>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
            <!-- docker的maven插件,官网:https://github.com/spotify/docker-maven-plugin -->
            <plugin>
                <groupId>com.spotify</groupId>
                <artifactId>docker-maven-plugin</artifactId>
                <version>0.4.13</version>
                <configuration>
               <imageName>192.168.184.141:5000/${project.artifactId}:${project.version}</imageName>
                    <baseImage>jdk1.8</baseImage>
                    <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>
                    <dockerHost>http://192.168.184.141:2375</dockerHost>
                </configuration>
            </plugin>
        </plugins>
    </build>

ip是需要自己改的,,,并且需要准备一个jdk1.8的镜像,镜像名= jdk1.8

以上配置会自动生成Dockerfile

生成的对应的文件配置如下

FROM jdk1.8    
ADD app.jar /            
ENTRYPOINT ["java","-jar","/app.jar"]

这里上传镜像需要一个jdk1.8的环境镜像 ......可以参考下列文章

docker 1.8jdk镜像搭建

4.打开cmd进入需要部署的微服务目录

mvn install一下,把项目下载到本地仓库

5.构建镜像

mvn docker:build  

也可以在构建命令的同时把镜像推送到register仓库,,命令为

mvn docker:build  -DpushImage

我构建镜像的时候遇到了无法上传的问题,,,,,,原因是镜像名出现了大写,,,,,,,,,,,就是下面这行配置......

<imageName>mybatis/SpringBootHelloWorld</imageName>

修改成 全小写就行...

<imageName>mybatis/springboothelloworld</imageName>

猜你喜欢

转载自blog.csdn.net/qq_40794266/article/details/83789979