1、DockerFile是什么?
DockerFile是用来构建Docker镜像的文件,命令参数脚本
构建步骤:
-
编写DockerFile文件
-
docker build 命令将其构建成一个镜像
-
docker run 运行镜像
-
docker push 发布镜像(Docker Hub、阿里云镜像)
DockerFile命令
-
每个保留关键字都必须是大写字母
-
执行从上到下顺序执行
-
#表示注释
-
每一个指令都会创建提交一个新的镜像层
FROM # 基础镜像
MAINTAINER # 镜像作者,姓名+邮箱
RUN # 镜像构建时需要运行的命令
ADD # 添加内容
WORKDIR # 镜像的工作目录
VOLUME # 挂载的目录
EXPOSE # 暴露端口,端口映射
CMD # 指定这个容器启动的时候运行的命令,只有最后一个会执行,可被替代
ENTRYPOINT # 指定这个容器启动的时候运行的命令,可追加
ONBUILD # 当构建一个被继承的镜像就会被执行
COPY # 类似与ADD,将文件拷贝到镜像
ENV # 构建时设置环境变量
2、构建自己的centos
Docker Hub中99%的镜像都是从 scratch
这个镜像来的
1、编写DockerFile文件
FROM centos
MAINTAINER huzeyo<huzeyo@qq.com>
ENV MYPATH /usr/local
WORKDIR $MYPATH
RUN yum -y install vim
RUN yum -y install net-tools
EXPOSE 80
CMD echo $MYPATH
CMD echo "-----end-----"
CMD /bin/bash
2、构建镜像
# 构建新镜像
docker build -f E:/Docker/DockerFile/mydockerfile-centos -t mycentos:0.1 .
# 查看镜像
docker images
# 运行镜像生成容器
docker run -it mycentos:0.1
# 此时发现一启动就在设置好的工作目录里,默认是在/目录下
pwd
/usr/local
# 测试vim和ifconfig是否可以正常使用
# 查看镜像是怎么制作的,即查看DockerFile文件
docker history [镜像id]