spring boot 打包成 docker镜像 并且上传到docker仓库(阿里云容器镜像服务)

maven 插件

<plugin>
    <groupId>com.spotify</groupId>
    <artifactId>docker-maven-plugin</artifactId>
    <version>1.1.1</version>
    <configuration>
        <forceTags>true</forceTags>
        <pushImage>true</pushImage>
        <buildArgs>
            <JAR_FILE>${project.build.finalName}.jar</JAR_FILE>
        </buildArgs>
        <imageName>${docker.repository.url}/${docker.repository.namespace}/${project.artifactId}:${project.version}</imageName>
        <serverId>${docker.repository.serverId}</serverId>
        <registryUrl>${docker.repository.url}</registryUrl>
        <dockerDirectory>src/main/docker</dockerDirectory>
        <resources>
            <resource>
                <targetPath>/</targetPath>
                <directory>${project.build.directory}</directory>
                <include>${project.build.finalName}.jar</include>
            </resource>
        </resources>
    </configuration>
</plugin>

dockerDirectory标签指定了Dockerfile 存放的位置

<properties>
    <docker.repository.url>registry.cn-hangzhou.aliyuncs.com</docker.repository.url>
    <docker.repository.namespace>liuhongjun</docker.repository.namespace>
    <docker.repository.serverId>docker-aliyun-my</docker.repository.serverId>
</properties>

docker.repository.url 阿里云仓库地址

docker.repository.namespace 阿里云仓库命名空间

docker.repository.serverId 登陆仓库的账号密码

仓库账号密码在manve settings.xml配置

<servers>
    <server>
        <id>docker-aliyun-my</id>
        <username>xxxx@xxx.com</username>
        <password>xxxx</password>
        <configuration>
            <email>xxx@xxxx.com</email>
        </configuration>
    </server>
</servers>

Dockerfile 文件

FROM java:8
VOLUME /tmp
# ENV TimeZone=Asia/Shanghai
# RUN ln -snf /usr/share/zoneinfo/$TimeZone /etc/localtime && echo $TimeZone > /etc/timezone
ARG JAR_FILE
COPY ${JAR_FILE} app.jar
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]

使用

mvn clean package

mvn docker:build

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值