docker做一个linux系统,制作Docker镜像

编写DockerFile

这个DockerFile是一个制作镜像的配方,用于描述这些文件,环境,和命令。在Linux、macOS的窗口终端中,或者windows的命令提示符下,执行下面的步骤,切记如果你使用的是macOS或者windows,你依然创建的是运行在Linux下的映像。

创建一个目录,在windows下使用md命令:

$ mkdir mydockerbuild

PS:构造镜像所需的所有东西都放在这个文件夹中。

切换到mydockerbulid目录中:

$ cd mydockerbulid

在当前目录中,创建编辑Dockerfile文本文件:

$ nano Dockerfile

复制下面这行,在文件中添加From 语句:

From docker/whalesay:lastet

PS:这个From 关键字告诉Docker你的映像是基于哪个映像。

添加RUN 语句来在映像中安装fortunes程序:

RUN apt-get -y update && apt-get install -y fortunes

这个whalesay映像是基于Ubuntu的,使用apt-get进行安装包。这两个命令用来刷新映像可用的包列表并安装fortunes程序,用来输出名言警句。

添加CMD 命令,这个告诉映像在它的环境被建立后,运行的命令,这个命令运行 fortune -a 且把它的输出传入cowsay程序。

CMD /usr/games/fortune -a | cowsay

验证,你的文件应该像这样:

FROM docker/whalesay:latest

RUN apt-get -y update && apt-get install -y fortunes

CMD/usr/games/fortune -a | cowsay

从Dockerfile中创建Image

当你mydockerbulid目录,使用docker bulid命令创建image,-t 参数来给你映像一个标签,因此之后你可以更容易地运行它。不要忘记.命令,这表示该命令是在当前命令来查找Dockerfile文件。

PS:使用docker images 就可以看到我们新创建的映像。

$ docker build -t docker-whale .

Sending build context to Docker daemon2.048kB

...snip...

Removing intermediate container cb53c9d09f3b

Successfully built c2c3152907b5

关于bulid构建过程

Docker检查并确保它有它构建所需要的一切,这会生称下面这条信息:

Sending build context to Docker daemon 2.048 kB

Docker检查whalesay映像是否在本地安装,如果没有从Hub上进行获取。对应Dockerfile的FROM 语句,将会生成这样的消息:

Step 1 : FROM docker/whalesay:latest---> 6b362a9f73eb

PS:执行每个步最后,将会打印ID,Dockerfile每一行对应于映像的每一图层,这个ID是每一步骤创建的图层。

Docker启动临时容器来运行whalesay映像。在临时容器中,Docker运行Dockerfile中下一个命令,即RUN命令,用于安装fortune程序,当RUN命令完成时,将创建一个新图层,删除中间容器。

创建一个新的中间容器,Docker为Dockerfile中CMD行添加一个层,并删除中间容器。

运行新构建的映像

docker run docker-whale

更多Docker相关教程见以下内容:

Docker 的详细介绍:请点这里

Docker 的下载地址:请点这里

0b1331709591d260c1c78e86d0c51c18.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值