来源:TechWeb 责任编辑:禹锋
Dockerfile是一个用来构建镜像的文本文件,在docker客户端命令行中我们可以通过docker build 命令使用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 创建镜像,标签为 runoob/ubuntu:v1:
docker build -t runoob/ubuntu:v1 .
使用URL github.com/creack/docker-firefox 的 Dockerfile 创建镜像:
docker build github.com/creack/docker-firefox
也可以通过 -f Dockerfile 文件的位置:
$ docker build -f /path/to/a/Dockerfile .
在 Docker 守护进程执行 Dockerfile 中的指令前,首先会对 Dockerfile 进行语法检查,有语法错误时会返回:
$ docker build -t test/myapp .
Sending build context to Docker daemon 2.048 kB
Error response from daemon: Unknown instruction: RUNCMD
以上示例的.代表本次执行的上下文路径,docker 在构建镜像有时候想要使用到本机的文件(比如复制),docker build 命令得知这个路径后,会将路径下的所有内容打包。
解析:由于 docker 的运行模式是 C/S。我们本机是 C,docker 引擎是 S。实际的构建过程是在 docker 引擎下完成的,所以这个时候无法用到我们本机的文件。这就需要把我们本机的指定目录下的文件一起打包提供给 docker 引擎使用。
如果未说明最后一个参数,那么默认上下文路径就是 Dockerfile 所在的位置。
注意:上下文路径下不要放无用的文件,因为会一起打包发送给 docker 引擎,如果文件过多会造成过程缓慢。
近日,成者再次推出新款扫描仪--Aura Plus旗舰版。
北极光科技网于2018年正式上线。秉承“专注、沟通、领先”的媒体理念。
可是,就在小编准备大干一场的时候,发现以前保存的资料零七八碎,散乱不堪;如何把他们放到同一网盘里规规矩矩地归纳备份起来,就成为了新年选择的重中之重。
今天,搜狗公司正式发布S1、E1两款AI录音笔新品,还与故宫宫廷文化合作推出了S1和C1 Pro两款产品的故宫宫廷联名款。
和奔驰、奥迪等豪华品牌相比,宝马近些年来在电动车上的速度要慢了不少。
标致作为法系车的代表车企,虽然较早的进入中国市场,但在国内的品牌运营方面同大众、丰田等头部车企存在一定的差距,导致如今销量也是每况愈下,在国内车市的存在感也越来越弱。