基础
docker build * 命令用于使用 Dockerfile 创建镜像;Dockerfile可以是本地的、也可以是在线的、自定义的;
语法
docker build [OPTIONS] PATH | URL | -
OPTIONS参数说明:
--build-arg=[] :设置镜像创建时的变量;
--cpu-shares :设置 cpu 使用权重;
--cpu-period :限制 CPU CFS周期;
--cpu-quota :限制 CPU CFS配额;
--cpuset-cpus :指定使用的CPU id;
--cpuset-mems :指定使用的内存 id;
--disable-content-trust :忽略校验,默认开启;
-f :指定要使用的Dockerfile路径;
--force-rm :设置镜像过程中删除中间容器;
--isolation :使用容器隔离技术;
--label=[] :设置镜像使用的元数据;
-m :设置内存最大值;
--memory-swap :设置Swap的最大值为内存+swap,"-1"表示不限swap;
--no-cache :创建镜像的过程不使用缓存;
--pull :尝试去更新镜像的新版本;
--quiet, -q :安静模式,成功后只输出镜像 ID;
--rm :设置镜像成功后删除中间容器;
--shm-size :设置/dev/shm的大小,默认值是64M;
--ulimit :Ulimit配置。
--tag, -t: 镜像的名字及标签,通常 name:tag 或者 name 格式;可以在一次构建中为一个镜像设置多个标签。
--network: 默认 default。在构建期间设置RUN指令的网络模式
实例
Dockerfile
FROM selenium/standalone-chrome-debug:2.53.1
MAINTAINER jwensh <jwensh@.com>
USER seluser
#==============================
# Generating the VNC password as seluser
# So the service can be started with seluser
#==============================
RUN mkdir -p ~/.vnc \
&& x11vnc -storepasswd 123456 ~/.vnc/passwd
USER root
#=====
# chinese
#=====
RUN apt-get update \
&& apt-get -y install ttf-wqy-microhei ttf-wqy-zenhei \
&& apt-get clean \
-
使用当前目录的 Dockerfile 创建镜像,标签为 selenium/standalone-chrome-debug-zh:2.53.1
。
docker build -t selenium/standalone-chrome-debug-zh:2.53.1 .
-
使用URL github.com/..../standalone-chrome-debug
的 Dockerfile 创建镜像。
docker build github.com/..../standalone-chrome-debug
-
也可以通过 -f Dockerfile 文件的位置:
docker build -f /path/to/a/Dockerfile .
docker build -t selenium/standalone-chrome-debug-zh:2.53.1 -f ./chrome-zh .
在 Docker 守护进程执行 Dockerfile 中的指令前,首先会对 Dockerfile 进行语法检查,有语法错误时会返回:
$ docker build -t selenium/standalone-chrome-debug-zh:2.53.1 .
Sending build context to Docker daemon 2.048 kB
Error response from daemon: Unknown instruction: RUNCMD
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)