springboot工程Dockerfile打包

首先要打开docker主机,开放远程端口

在打包工程的电脑上配置环境变量

DOCKER_HOST=tcp://192.168.1.119:2375

打开cmd窗口,确定环境变量配置生效:输入 echo %DOCKER_HOST%,会输出 tcp://192.168.1.119:2375
查看环境变量

创建Dockerfile文件,要跟pom文件同级目录

# Docker image for springboot application
# VERSION 0.0.1
# Author: Hansson

### 基础镜像,使用alpine操作系统,openjkd使用8u201
FROM openjdk:8u201-jdk-alpine3.9

#作者
MAINTAINER Hansson <liuhanqingboy@vip.qq.com>

#系统编码
ENV LANG=C.UTF-8 LC_ALL=C.UTF-8

#声明一个挂载点,容器内此路径会对应宿主机的某个文件夹
VOLUME /tmp

#暴露8080端口
EXPOSE 8080

#定义参数
#ARG JAR_FILE
#应用构建成功后的jar文件被复制到镜像内,名字也改成了app.jar
#ADD ${JAR_FILE} demo.jar
ADD target/demo-0.0.1-SNAPSHOT.jar demo.jar

#touch命令的作用是修改这个文件的访问时间和修改时间为当前时间,而不会修改文件的内容。
#RUN bash -c 'touch /demo.jar'

#启动容器时的进程
ENTRYPOINT ["java","-Dfile.encoding=UTF8","-Duser.timezone=GMT+08","-jar","demo.jar"]

用IDEA的Docker插件将应用构建成镜像并在远程Docker上运行

这里注意:Dockerfile中的 ADD 命令后面jar包位置不能用JAR_FILE,容器运行会出错:Error: Invalid or corrupt jarfile demo.jar

连接远程Docker服务

连接远程Docker服务

创建Dockerfile配置

在这里插入图片描述

Dockerfile详细配置

Dockerfile详细配置

执行的打包命令
docker build -t hanssondemo:v0.0.1 . && docker run -p 1010:8080 --name springbootdemo hanssondemo:v0.0.1 
查看镜像

查看镜像

查看容器

查看容器

查看启动应用

查看启动应用

使用maven编译打包镜像

确定DOCKER_HOST环境变量配置生效
echo %DOCKER_HOST%
set DOCKER_HOST

在这里插入图片描述

编译项目并构建docker镜像,编译结束自动推送镜像到docker主机中
mvn clean package dockerfile:build -Dmaven.test.skip=true
查看镜像

查看镜像

运行容器
docker run -itd --name springdemo -p 2020:8080 hansson/demo:0.0.1-SNAPSHOT /bin/bash
查看运行容器

查看运行容器

查看启动应用

查看启动应用

参考:

SpringBoot之Dockerfile应用
IDEA的Docker插件实战(Dockerfile篇)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值