idea项目自动部署docker

Dockerfile

FROM registry.cn-hangzhou.aliyuncs.com/zhy-cn/jdk8:1.0
WORKDIR /project-redis/jar
COPY redisdemo.jar /project-redis/jar/redisdemo.jar
EXPOSE 8080
ENTRYPOINT java -Dfile.encoding=UTF-8 -Duser.timezone=GMT+08 -jar redisdemo.jar

 pom

<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <executions>
                <execution>
                    <goals>
                        <goal>repackage</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
        <!-- docker插件 -->
        <plugin>
            <groupId>com.spotify</groupId>
            <artifactId>docker-maven-plugin</artifactId>
            <version>1.2.2</version>
            <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-->
                <imageTags>
                    <imageTag>latest</imageTag>
                </imageTags>
                <!-- 指定我们项目中Dockerfile文件的路径-->
                <dockerDirectory>${project.basedir}/src/main/resources</dockerDirectory>

                <!--指定远程docker 地址-->
                <dockerHost>http://**ip地址*****:2375</dockerHost>

                <!-- 这里是复制 jar 包到 docker 容器指定目录配置 -->
                <resources>
                    <resource>
                        <targetPath>/</targetPath>
                        <!--jar包所在的路径  此处配置的即对应项目中target目录-->
                        <directory>${project.build.directory}</directory>
                        <!-- 需要包含的 jar包 ,这里对应的是 Dockerfile中添加的文件名 -->
                        <include>${project.build.finalName}.jar</include>
                    </resource>
                </resources>
            </configuration>
        </plugin>
    </plugins>
    <finalName>redisdemo</finalName>
</build>

点击package

 

 

 

 

前面的部署已经完成。已经成功。

遇到的问题:

每次docker部署就会多出一个镜像文件,有待解决(sha256)

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值