# DockerSpringBootPlugin
docker-maven-plugin 完全免Dockerfile 文件
使用docker-maven-plugin 进行完全免 Dockerfile 文件
注意 EXPOSE 在spring boot 中不起作用
详细
https://github.com/spotify/docker-maven-plugin
本机不安装 docker 连接其他主机或虚拟机
需要添加两个额外配置
<dockerHost>https://ip:2376</dockerHost>
<dockerCertPath>证书地址</dockerCertPath>
这两个地址可以 在 docker 环境变量中查询到 如果是 docker-machine 创建的虚拟机 可以同 env 连接的的时候 会显示
Mvnen :
构建镜像
mvn clean package docker:build构建镜像并且推送到镜像表
mvn clean package docker:build -DpushImage
org.springframework.boot spring-boot-maven-plugin com.spotify docker-maven-plugin ${docker.image.prefix}/${project.artifactId} java:8 ["java", "-jar", "/${project.build.finalName}.jar"] / ${project.build.directory} ${project.build.finalName}.jar
建议
如果自己或公司的 docker镜像仓库 ${docker.image.prefix} 设置为自己的 自己的名称 后续上传的时候 就不需要 改名称 了
如果自己不想搭建 公司也没有 但是想 可以随时获取的 可以使用 阿里云的 docker 镜像管理
实例 GitHub https://github.com/atliwen/DockerSpringBootPlugin
使用私有 docker 镜像仓库
统一Manven 版本依赖 parent
org.springframework.boot spring-boot-maven-plugin com.spotify docker-maven-plugin docker-hub https://10.10.6.50:5000 https://10.10.12.205:2376 C:\Users\admin\.docker\machine\machines\manager 10.10.6.50:5000/${docker.imageName}:${project.version} java:8 ${docker.maintainer} /tmp ["java", "-jar", "/${project.build.finalName}.jar"] / ${project.build.directory} ${project.build.finalName}.jar
注意:
在子Maven 项目中 写 定义 镜像名称 和项目名称
docker 镜像 TAG 为版本号0.0.1-SNAPSHOT
EDI 订单处理服务 dj-atliwen-ediwebapi
登录私有镜像仓库的配置
docker-hub https://10.10.6.50:5000
serverId 是Maven 中的配置 配置 Maven settings.xml 中 server 节点
// email 也是必须填写的 docker-hub foo secret-password foo@foo.bar