Docker容器化(6)

本文介绍了Dockerfile,它是用于构建Docker镜像的脚本文件,为开发、测试和运维提供了统一的环境。文章详细讲解了Dockerfile的常用命令,并给出了使用Dockerfile创建基于centos:7的jdk1.8镜像的步骤。
摘要由CSDN通过智能技术生成

Docker容器化

6.Dockerfile

6.1 什么是Dockerfile

dockerfile是由一系列命令和参数构成的脚本,这些命令应用于基础镜像并最终创建一个新的镜像.

  • 对于开发人员:可以为开发团队提供一个完全一致的开发环境;
  • 对于测试人员:可以直接拿开发时所构建的镜像或者通过Dockerfile文件构建一个新的镜像开始工作了;
  • 对于运维人员:在部署,可以实现无缝移植.
6.2 常用命令
命令作用
FROM image_name:tag定义了使用哪个基础镜像启动构建流程
MAINTAINER user_name声明镜像的创建者
ENV key value设置环境变量(可以写多条)
RUN command是Dockerfile的核心部分(可以写多条)
ADD source_dir/file dest_dir/file将宿主机的文件复制到容器内,如果是一个压缩文件,将会在复制后解压
COPY source_dir/file dest_dir/file和ADD相似,但是如果有压缩文件并不能解压
WORKDIR path_dir设置工作目录
6.3 使用脚本创建镜像

使用dockerfile脚本创建jdk1.8镜像

步骤:

  • 创建空文件夹 /usr/local/dockerjdk8 用来存放创建的jdk1.8镜像和jdk1.8的压缩包,基础镜像是centos:7
mkdir -p /usr/local/dockerjdk8
  • 上传jdk1.8的压缩包
  • 移动压缩包至指定目录下
mv jdk-8u171-linux-x64.tar.gz /usr/local/dockerjdk8
  • 进入到/usr/local/dockerjdk8文件夹,需要构建一个Dockerfile文件
vi Dockerfile

注:文件名只能叫 Dockerfile

  • 在文件Dockerfile里面依次编写如下命令
#使用的基础镜像 centos:7,没有则自动下载 
FROM centos:7
#作者
MAINTAINER chen
#切换工作目录
WORKDIR /usr
RUN mkdir /usr/local/java
#ADD是相对目录jar,把Java添加到容器中
ADD jdk-8u171-linux-x64.tar.gz /usr/local/java/

#配置Java环境变量
ENV JAVA_HOME /usr/local/java/jdk1.8.0_171
ENV JRE_HOME $JAVA_HOME/jre
ENV CLASSPATH $JAVA_HOME/bin/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib:$CLASSPATH
ENV PATH $JAVA_HOME/bin:$PATH

WQ!保存退出

  • 构建镜像
docker build -t='jdk1.8' .

注意后面的空格和点,不能省略,jdk1.8为构建镜像的名字,后面的点是代表相对路径,Dockerfile文件所在的相对于当前目录下的相对路径

  • 查看镜像是否构建完成
docker images
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值