build_image.md 1.7 KB
Newer Older
F
feilong 已提交
1 2 3 4 5 6 7 8 9
# Build docker(2): 构建容器并发布

上一题准备了代码仓库,并且配置了对应的 Dockerfile, 现在使用 docker 命令来制作镜像:

```bash
docker image build -t cloud_native_hello_py:0.0.1 ./
```

构建如图所示:
F
feilong 已提交
10

F
feilong 已提交
11
![](https://gitcode.net/csdn/skill_tree_cloud_native/-/raw/master/data/1.云原生初阶/1.容器(docker)/4.使用Dockerfile制作镜像/build_image.jpg)
F
fix bug  
feilong 已提交
12
<br/>
F
feilong 已提交
13 14 15 16 17 18 19 20 21 22 23 24 25 26

构建镜像之后,可以将镜像发布到 DockerHub ,不过需要首先注册下账号

1.<https://hub.docker.com> 上注册自己的账号
2. 使用命令 docker login 在本机登陆,输入自己的用户名和密码

现在,可以使用命令 tag 来修改镜像的标签为`用户名/镜像名`格式:

```bash
docker tag cloud_native_hello_py:0.0.1 fanfeilong/cloud_native_hello_py
```

可以用`docker image ls`验证结果

F
feilong 已提交
27
![](https://gitcode.net/csdn/skill_tree_cloud_native/-/raw/master/data/1.云原生初阶/1.容器(docker)/4.使用Dockerfile制作镜像/build_image_tag.jpg)
F
fix bug  
feilong 已提交
28
<br/>
F
feilong 已提交
29 30 31 32 33 34 35

现在,可以使用镜像的 push 命令来发布

```bash
docker push fanfeilong/cloud_native_hello_py:latest
```

F
feilong 已提交
36
![](https://gitcode.net/csdn/skill_tree_cloud_native/-/raw/master/data/1.云原生初阶/1.容器(docker)/4.使用Dockerfile制作镜像/build_image_push.jpg)
F
fix bug  
feilong 已提交
37
<br/>
F
feilong 已提交
38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57

以下描述错误的是?

## 答案

docker image build 构建的时候不需要指定 Dockerfile 所在目录

## 选项

### A

推送镜像需要用 `docker tag` 命令给镜像打上符合规则的标签

### B

需要在 Docker Hub 上注册账号才能用以推送镜像

### C

可以将容器镜像发布到 Docker Registry,其中 Docker Hub是官方的Docker 仓库中心