DockerMaven插件

DockerMaven插件

微服务部署有两种方法:

(1) 手动部署: 首先基于源码打包生成jar包 (或war包), 将jar包 (或war包) 上传至虚拟机并拷贝至JDK容器.

(2) 通过Maven插件自动部署

对于数量众多的微服务, 手动部署无疑是非常麻烦的做法, 并且容易出错. 所以自动部署是开发中经常使用的方法.

Maven插件自动部署步骤:

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

vi /lib/systemd/system/docker.service

其中ExecStart=后添加配置-H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock

修改后如下:

在这里插入图片描述

(2) 刷新配置, 重启服务

systemctl daemon-reload
systemctl restart docker
docker start registry

(3) 在工程pom.xml增加配置—(宿主机的ip)

<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>172.16.66.130: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://172.16.66.130:2375</dockerHost>
        </configuration>
      </plugin>
    </plugins>
  </build>

以上配置会自动生成Dockerfile

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

(5) 在mac的命令提示符下, 进入工程所在的目录, 输入以下命令, 进行打包和上传镜像

mvn clean package docker:build -DpushImage

执行后, 会有如下输出, 代码正在上传

在这里插入图片描述

浏览器访问http://172.16.66.130:5000/v2/_catalog, 输出

{"repositories": ["tensquare_base"]}

在这里插入图片描述

(6) 进入宿主机, 查看镜像

docker  images

在这里插入图片描述

输出如上内容, 表示微服务已经做成镜像

(7) 启动容器:

docker run -di --name=base -p 9001:9001 172.16.66.130:5000/tensquare_base:1.0-SNAPSHOT
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

只因为你温柔

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值