使用Maven插件构建与发布Docker镜像

环境

  • windows 10
  • docker-toolbox
  • virtualbox
  • 阿里云容器镜像服务

步骤

1. 编辑POM文件


    com.spotify
    dockerfile-maven-plugin
    1.4.4
    
        
            tag-latest
            deploy
            
                build
                tag
                push
            
            
                latest
            
        
        
            tag-version
            deploy
            
                build
                tag
                push
            
            
                ${project.version}
            
        
    
    
        
        镜像仓库用户名
        
        镜像仓库密码
        
        镜像仓库地址
        latest
        
            ${project.build.finalName}.jar
        
    

2. 编辑Dockerfile

FROM java:8-jdk-alpine

ARG JAR_FILE
ADD target/${JAR_FILE} app.jar

EXPOSE 8080

ENTRYPOINT ["/usr/bin/java", "-jar", "/app.jar"]

3. 执行构建命令

先查看docker环境变量

$ docker-machine env
export DOCKER_TLS_VERIFY="1"
export DOCKER_HOST="tcp://192.168.99.100:2376"
export DOCKER_CERT_PATH="C:\Users\shiji\.docker\machine\machines\default"
export DOCKER_MACHINE_NAME="default"
export COMPOSE_CONVERT_WINDOWS_PATHS="true"

再通过命令行构建

# 不设置环境变量会报错:
# Connect to localhost:2375 failed: Connection refused
set DOCKER_HOST=https://192.168.99.100:2376
set DOCKER_CERT_PATH=C:\Users\shiji\.docker\machine\machines\default

# 生成jar包
mvn package -Dmaven.test.skip=true

# build image
mvn dockerfile:build

# push image
mvn dockerfile:push@tag-version
mvn dockerfile:push@tag-latest

参考资料

  • 插件相关
    dockerfile-maven homepage
    How to define a custom docker host url?
    push multiple tags
  • 阿里云镜像服务与RAM子账号
    镜像基本操作
    仓库访问控制

你可能感兴趣的:(使用Maven插件构建与发布Docker镜像)