赞
踩
Volume:是主机的一个文件或者目录,用来持久化容器在运行过程中的数据,且不会随着删除容器而被删除
创建一个数据卷
docker volume create 数据卷名
#比如创建nginx数据卷
docker volume create nginx-vol
查看数据卷
docker volume ls
查看数据卷详细信息
docker volume inspect 数据卷名
#比如查看nginx-vol的信息
docker volume inspect nginx-vol
创建容器和对应数据卷
docker -id --name=容器名 -v 数据卷名:容器内部同步的数据路径 镜像名
#比如,创建nginx容器和nginx-vol数据集同步容器内/usr/share/nginx/html的文件
docker -id --name=nginx-test -v nginx-vol:/usr/share/nginx/html nginx
清理数据卷
清理数据卷时必须保证有数据卷对应关系的容器被删除
docker volume rm 数据卷名
#比如清理nginx的数据卷
docker volume rm nginx-vol
清理所有数据卷
docker volume rm ${docker volume ls}
Dockerfile是由一系列命令和参数构成的脚本,这些命令基于基础镜像并创建一个新的镜像。
对于开发人员来说:可以为开发团队提供一个完全一致的开发环境
对于测试人员来说:可以直接拿开发时所构建的镜像或者通过Dockerfile文件构建镜像开始工作
对于运维人员来说:在部署时,可以实现应用的无缝移植
构架一个Centos镜像,且配置Java环境
FROM centos:7
MAINTAINER HDLaZy
WORKDIR /usr
RUN mkdir /usr/local/java//
ADD jdk-8u321-linux-x64.tar.gz /usr/local/java/
ENV JAVA_HOME /usr/local/java/jdk1.8.0_321
ENV PATH $JAVA_HOME/bin:$PATH
参数
FROM image_name:tag 定义了使用哪个基础镜像启动构建流程
MAINTAINER user_name 声明了镜像的创建者
ENV key value 设置环境变量(可以写多条)
RUN command 是Dockerfile的核心部分(可以写多条)
ADD source_dir/file 将宿主机的文件复制到容器内,如果是一个压缩文件,将会在复制后自动解压
COPY source_dir/file 和ADD类似,区别在于如果是一个压缩文件,复制后不解压
WORKDIR path_dir 设置工作目录
构建镜像
docker build
docker build -t 镜像名
docker build -t 镜像名 -f DockerFile路径
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。