Docker 制作最简单的 Image

目标

我们将使用 Dockerfile 来制作一个最简单的最简单 image,该 image 运行起来后,将输出 Hello world, my first docker images.

环境

Win10 + WSL 2 + Ubuntu 20.04

Step by Step

建立 Image 基础目录

首先,我们在当前路径下创建目录 docker1。

$mkdir docker1
$cd docker1

这样我们的当前路径为

yizhou@O7070-8B00:~/docker1$ pwd
/home/yizhou/docker1

创建 Dockerfile 文件

可以直接 vi Dockerfile,然后输入如下内容

# get base image ubuntu
FROM ubuntu:20.04

# set maintainer name
MAINTAINER yizhou <[email protected]>

# update ubuntu 20.04
RUN apt-get update

# echo message
CMD ["echo", "hello world! from my first docker image"]

第一行,FROM ubuntu:20.04,指定了 ubuntu 的版本。如果想用 18.04,改成 FROM ubuntu:18.04。
第二行,MAINTAINER,指定维护人员信息。这个可以不要。
第三行,RUN,运行一个命令。这里我们运行 apt-get update。
第四行,CMD,执行一个 command 命令。这里我们 echo 一个消息。

制作镜像文件

我们使用 docker build,具体如下

$ docker build -t myimage1:1.0 .

参数说明

-t 用来设置镜像的 tag
. 表示为当前路径
运行该命令行,如下

yizhou@O7070-8B00:~/docker1$ docker build -t myimage1:1.0 .
[+] Building 2.9s (6/6) FINISHED
 => [internal] load build definition from Dockerfile                                                                                                          0.0s
 => => transferring dockerfile: 278B                                                                                                                          0.0s
 => [internal] load .dockerignore                                                                                                                             0.0s
 => => transferring context: 2B                                                                                                                               0.0s
 => [internal] load metadata for docker.io/library/ubuntu:20.04                                                                                               2.8s
 => [1/2] FROM docker.io/library/ubuntu:20.04@sha256:cf31af331f38d1d7158470e095b132acd126a7180a54f263d386da88eb681d93                                         0.0s
 => CACHED [2/2] RUN apt-get update                                                                                                                           0.0s
 => exporting to image                                                                                                                                        0.0s
 => => exporting layers                                                                                                                                       0.0s
 => => writing image sha256:f74ac5eb2944a584c4d22dbc442f734425461522d7e1561a7181e6ffad0f14a9                                                                  0.0s
 => => naming to docker.io/library/myimage1:1.0                                                                                                               0.0s

这样我们一个最简单的镜像就完成了。

获取镜像 ID

使用命令 docker images。运行结果如下:

yizhou@O7070-8B00:~/docker1$ docker images
REPOSITORY   TAG       IMAGE ID       CREATED          SIZE
myimage1     1.0       f74ac5eb2944   27 minutes ago   101MB

我们可以看到镜像的 REPOSITORY 为 myimage1,TAG 为 1.0,IMAGE ID 为 f74ac5eb2944。

运行镜像

使用命令 docker run。具体如下:

yizhou@O7070-8B00:~/docker1$ docker run f74ac5eb2944
hello world! from my first docker image

如上,我们看到在 Dockerfile 中指定的消息显示了。
这样,我们就完成了一个最最简单的 Docker image 制作。

你可能感兴趣的:(笔记,Docker,build,image)