Dockerfile自定义镜像

文章介绍了如何使用Dockerfile来构建基于ubuntu和java8的Java项目镜像。首先,详细解释了Dockerfile的基本语法,然后分别展示了两个例子:一是基于ubuntu:16.04构建,涉及拷贝项目文件、安装JDK和设置环境变量;二是基于java:8-alpine镜像构建,步骤更为简洁。最后提到了构建和运行镜像的命令。
摘要由CSDN通过智能技术生成

Dockerfile基本语法

Dockerfile就是一个文本文件,其中包含一个个的指令(Instruction),用指令来说明要执行什么操作来构建镜像。每一个指令都会形成一层Layer。
在这里插入图片描述

基于ubuntu构建java项目

步骤1:新建一个空文件夹docker-mysql
在这里插入图片描述
步骤2:拷贝项目jar包,jdk等资料到文件夹中
docker-demo.jar
jdk8.tar.gz
Dockerfile
3个文件到docker-mysql这个目录
在这里插入图片描述
其中Dockerfile文件内容如下:

# 指定基础镜像
FROM ubuntu:16.04
# 配置环境变量,JDK的安装目录
ENV JAVA_DIR=/usr/local
# 拷贝jdk和java项目的包
COPY ./jdk8.tar.gz $JAVA_DIR/
COPY ./docker-demo.jar /tmp/app.jar
# 安装JDK
RUN cd $JAVA_DIR \
 && tar -xf ./jdk8.tar.gz \
 && mv ./jdk1.8.0_144 ./java8
# 配置环境变量
ENV JAVA_HOME=$JAVA_DIR/java8
ENV PATH=$PATH:$JAVA_HOME/bin
# 暴露端口
EXPOSE 8080
# 入口,java项目的启动命令
ENTRYPOINT java -jar /tmp/app.jar

步骤3:进入docker-mysql文件夹 运行构建

docker build -t xwdx:1.0 .

在这里插入图片描述
步骤4:运行这个镜像

docker run --name xwdx -d -p 8080:8080 xwdx:1.0

在这里插入图片描述

基于java8构建java项目

需求:基于java:8-alpine镜像,将一个Java项目构建为镜像
实现思路如下:
① 新建一个空的目录,然后在目录中新建一个文件,命名为Dockerfile
② 拷贝课前资料提供的docker-demo.jar到这个目录中
③ 编写Dockerfile文件:

FROM xetys/java-8-docker:v2 #选择一个
COPY ./docker-demo.jar /tmp/app.jar
EXPOSE 8090
ENTRYPOINT java -jar /tmp/app.jar

④ 使用docker build命令构建镜像
注意:先删除之前运行的容器否则端口号冲突
⑤ 使用docker run创建容器并运行

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值