dockerfile就是用来构建镜像的文件,按行执行,
文件中的内容 指令(大写) +参数
这里的每一行表示镜像的每一层
创建文件夹
mkdir test-volume
创建并编辑dockerfile文件
vim dockerfile
创建 centos镜像并挂载两个卷(dockerfile文件的内容)
FROM centos
VOLUME ["volume01","volume02"]
CMD echo "-----end-----"
CMD /bin/bash
创建容器
docker build -f /home/test-volume/dockerfile1 -t caosheng/centos .
查看镜像
docker ps
查看镜像挂载的信息及地址
docker inspect “镜像id”
–volumes-from
数据卷容器的同步类似于java中的extends子类继承父类(但在子类中创建父类中也会同步) 此时docker01为数据卷容器(建议自己去执行一次)
数据容器中某一个共享的容器被删除,其他共享容器内的数据不会随之丢失,也就是说这里的数据共享本质上是容器之间的数据互相拷贝
dockerfile的指令详解(注意!!!全大写)由此自己创建一个镜像
FROM #基础镜像,一切从这里开始构建
MAINTAINER #镜像是谁写的姓名+邮箱
RUN #镜像构建的时候需要运行的命令
ADD #步骤,tomcat镜像,tomcat的压缩包添加的内容
WORKDIR #镜像的工作目录
VOLUME #挂载的目录
EXPOSE #暴露端口配置
CMD #指定这个容器启动时要运行的命令(只有最后一个生效,可被替代)
ENTRYPOINT #指定这个容器启动时要运行的命令(可以追加命令 )
ONBUILD #当构建一个被继承Dockerfile这个时候就会运行ONBUILD的指令。触发指令。
COPY #类似ADD,帮我们文件拷贝到镜像中
ENV #构建的时候设置环境变量!
构建镜像练习