Skip to content

Commit

Permalink
Moved Load/Save and Import/Export to Image section
Browse files Browse the repository at this point in the history
geminiyellow committed Jul 20, 2016
1 parent 466dd42 commit f35ff15
Showing 1 changed file with 29 additions and 34 deletions.
63 changes: 29 additions & 34 deletions zh-cn/README.md
Original file line number Diff line number Diff line change
@@ -13,7 +13,6 @@
* [仓管中心和仓库(Registry & Repository)](#仓管中心和仓库registry--repository)
* [Dockerfile](#dockerfile)
* [层(Layers)](#层layers)
* [加载/保存(Load/Save) 导入/导出(Import/Export)](#加载保存loadsave-导入导出importexport)
* [链接(Links)](#链接links)
* [卷标(Volumes)](#卷标volumes)
* [暴露端口(Exposing Ports)](#暴露端口exposing-ports)
@@ -168,7 +167,35 @@ docker run hello-world

虽然你可以用 `docker rmi` 命令来删除指定的镜像,但是这里有个称为 [docker-gc](https://github.com/spotify/docker-gc) 的工具,它可以以一种安全的方式,清理掉那些不再被任何容器使用的镜像。

## 网络(Networks)
### 加载/保存镜像

从文件中加载镜像:
```
docker load < my_image.tar.gz
```
保存既有镜像:
```
docker save my_image:my_tag > my_image.tar.gz
```

### 导入/导出容器

从文件中将容器作为镜像导入:
```
cat my_container.tar.gz | docker import - my_image:my_tag
```

导出既有容器:
```
docker export my_container > my_container.tar.gz
```

### 加载被保存的镜像和导入作为镜像导出的容器之间的不同

通过 `load` 命令来加载镜像,会创建一个新的镜像,并继承原镜像的所有历史。
通过 `import` 将容器作为镜像导入,也会创建一个新的镜像,但并不包含原镜像的历史,因此生成的镜像会比使用加载方式生成的镜像要小。

## 网络(Networks)

Docker 有[网络(networks)](https://docs.docker.com/engine/userguide/networking/dockernetworks/)功能。我并不是很了解它,所以这是一个扩展本文的好地方。这里有篇笔记指出,这是一种可以不使用端口来达成 docker 容器间通信的好方法。详情查阅[通过网络来工作](https://docs.docker.com/engine/userguide/networking/work-with-networks/)

@@ -333,38 +360,6 @@ docker run -v /Users/wsargent/myapp/src:/src

可还可以考虑运行一个纯数据容器,像[这里](http://container42.com/2013/12/16/persistent-volumes-with-docker-container-as-volume-pattern/)所说的那样,提供可移植数据。

## 加载/保存(Load/Save) 导入/导出(Import/Export)

Docker 允许你加载/保存镜像以及导入/导出容器。

### 加载/保存镜像

从文件中加载镜像:
```
docker load < my_image.tar.gz
```
保存既有镜像:
```
docker save my_image:my_tag > my_image.tar.gz
```

### 导入/导出容器

从文件中将容器作为镜像导入:
```
cat my_container.tar.gz | docker import - my_image:my_tag
```

导出既有容器:
```
docker export my_container > my_container.tar.gz
```

### 加载被保存的镜像和导入作为镜像导出的容器之间的不同

通过 `load` 命令来加载镜像,会创建一个新的镜像,并继承原镜像的所有历史。
通过 `import` 将容器作为镜像导入,也会创建一个新的镜像,但并不包含原镜像的历史,因此生成的镜像会比使用加载方式生成的镜像要小。

## 暴露端口(Exposing ports)

通过宿主容器暴露输入端口是相当[繁琐,但有效](https://docs.docker.com/reference/run/#expose-incoming-ports)的。

0 comments on commit f35ff15

Please sign in to comment.