diff --git a/_images/compose.png b/_images/compose.png
deleted file mode 100644
index d753482..0000000
Binary files a/_images/compose.png and /dev/null differ
diff --git a/_images/container_connect_topology.png b/_images/container_connect_topology.png
deleted file mode 100644
index 5419d56..0000000
Binary files a/_images/container_connect_topology.png and /dev/null differ
diff --git a/_images/enterprise_usage.png b/_images/enterprise_usage.png
deleted file mode 100644
index 5682892..0000000
Binary files a/_images/enterprise_usage.png and /dev/null differ
diff --git a/_images/fig-example-large.gif b/_images/fig-example-large.gif
deleted file mode 100644
index 27a82a4..0000000
Binary files a/_images/fig-example-large.gif and /dev/null differ
diff --git a/_images/fig-example-large.png b/_images/fig-example-large.png
deleted file mode 100644
index dc26d4f..0000000
Binary files a/_images/fig-example-large.png and /dev/null differ
diff --git a/_images/fig-rails-screenshot.png b/_images/fig-rails-screenshot.png
deleted file mode 100644
index f5f9cb5..0000000
Binary files a/_images/fig-rails-screenshot.png and /dev/null differ
diff --git a/_images/swarm.png b/_images/swarm.png
deleted file mode 100644
index 4af7b27..0000000
Binary files a/_images/swarm.png and /dev/null differ
diff --git a/advanced_network/README.md b/advanced_network/README.md
index f92c3aa..a169fda 100644
--- a/advanced_network/README.md
+++ b/advanced_network/README.md
@@ -7,6 +7,6 @@
当创建一个 Docker 容器的时候,同时会创建了一对 `veth pair` 接口(当数据包发送到一个接口时,另外一个接口也可以收到相同的数据包)。这对接口一端在容器内,即 `eth0`;另一端在本地并被挂载到 `docker0` 网桥,名称以 `veth` 开头(例如 `vethAQI2QT`)。通过这种方式,主机可以跟容器通信,容器之间也可以相互通信。Docker 就创建了在主机和所有容器之间一个虚拟共享网络。
-![Docker 网络](../_images/network.png)
+![Docker 网络](_images/network.png)
接下来的部分将介绍在一些场景中,Docker 所有的网络定制配置。以及通过 Linux 命令来调整、补充、甚至替换 Docker 默认的网络配置。
diff --git a/_images/network.png b/advanced_network/_images/network.png
similarity index 100%
rename from _images/network.png
rename to advanced_network/_images/network.png
diff --git a/_images/docker_compose.jpg b/compose/_images/docker_compose.jpg
similarity index 100%
rename from _images/docker_compose.jpg
rename to compose/_images/docker_compose.jpg
diff --git a/compose/intro.md b/compose/intro.md
index 6321bad..3399434 100644
--- a/compose/intro.md
+++ b/compose/intro.md
@@ -1,6 +1,6 @@
## Compose 简介
-![Docker Compose 项目](../_images/docker_compose.jpg)
+![Docker Compose 项目](_images/docker_compose.jpg)
Compose 项目是 Docker 官方的开源项目,负责实现对 Docker 容器集群的快速编排。从功能上看,跟 OpenStack 中的 Heat 十分类似。
diff --git a/_images/etcd_logo.png b/etcd/_images/etcd_logo.png
similarity index 100%
rename from _images/etcd_logo.png
rename to etcd/_images/etcd_logo.png
diff --git a/etcd/intro.md b/etcd/intro.md
index d2fa82f..8504e88 100644
--- a/etcd/intro.md
+++ b/etcd/intro.md
@@ -1,6 +1,6 @@
## 什么是 etcd
-![](../_images/etcd_logo.png)
+![](_images/etcd_logo.png)
etcd 是 CoreOS 团队于 2013 年 6 月发起的开源项目,它的目标是构建一个高可用的分布式键值(key-value)数据库,基于 Go 语言实现。我们知道,在分布式系统中,各种服务的配置信息的管理分享,服务的发现是一个很基本同时也是很重要的问题。CoreOS 项目就希望基于 etcd 来解决这一问题。
diff --git a/_images/images-create-nginx-docker.png b/image/_images/images-create-nginx-docker.png
similarity index 100%
rename from _images/images-create-nginx-docker.png
rename to image/_images/images-create-nginx-docker.png
diff --git a/image/commit.md b/image/commit.md
index 2189e67..24b53a8 100644
--- a/image/commit.md
+++ b/image/commit.md
@@ -16,7 +16,7 @@ docker run --name webserver -d -p 80:80 nginx
直接用浏览器访问的话,我们会看到默认的 Nginx 欢迎页面。
-
+
现在,假设我们非常不喜欢这个欢迎页面,我们希望改成欢迎 Docker 的文字,我们可以使用 `docker exec` 命令进入容器,修改其内容。
@@ -33,7 +33,7 @@ exit
现在我们再刷新浏览器的话,会发现内容被改变了。
-
+
我们修改了容器的文件,也就是改动了容器的存储层。我们可以通过 `docker diff` 命令看到具体的改动。
diff --git a/_images/install-mac-apps.png b/install/_images/install-mac-apps.png
similarity index 100%
rename from _images/install-mac-apps.png
rename to install/_images/install-mac-apps.png
diff --git a/_images/install-mac-dmg.png b/install/_images/install-mac-dmg.png
similarity index 100%
rename from _images/install-mac-dmg.png
rename to install/_images/install-mac-dmg.png
diff --git a/_images/install-mac-example-nginx.png b/install/_images/install-mac-example-nginx.png
similarity index 100%
rename from _images/install-mac-example-nginx.png
rename to install/_images/install-mac-example-nginx.png
diff --git a/_images/install-mac-menu.png b/install/_images/install-mac-menu.png
similarity index 100%
rename from _images/install-mac-menu.png
rename to install/_images/install-mac-menu.png
diff --git a/_images/install-mac-menubar.png b/install/_images/install-mac-menubar.png
similarity index 100%
rename from _images/install-mac-menubar.png
rename to install/_images/install-mac-menubar.png
diff --git a/_images/install-mac-preference-advanced.png b/install/_images/install-mac-preference-advanced.png
similarity index 100%
rename from _images/install-mac-preference-advanced.png
rename to install/_images/install-mac-preference-advanced.png
diff --git a/_images/install-mac-success.png b/install/_images/install-mac-success.png
similarity index 100%
rename from _images/install-mac-success.png
rename to install/_images/install-mac-success.png
diff --git a/install/mac.md b/install/mac.md
index d8c474e..46091df 100644
--- a/install/mac.md
+++ b/install/mac.md
@@ -20,29 +20,29 @@ brew cask install docker
如同 macOS 其它软件一样,安装也非常简单,双击下载的 `.dmg` 文件,然后将那只叫 [Moby](https://blog.docker.com/2013/10/call-me-moby-dock/) 的鲸鱼图标拖拽到 `Application` 文件夹即可(其间可能会询问系统密码)。
-
+
### 运行
从应用中找到 Docker 图标并点击运行。
-
+
运行之后,会在右上角菜单栏看到多了一个鲸鱼图标,这个图标表明了 Docker 的运行状态。
-
+
第一次点击图标,可能会看到这个安装成功的界面,点击 "Got it!" 可以关闭这个窗口。
-
+
以后每次点击鲸鱼图标会弹出操作菜单。
-
+
*在国内使用 Docker 的话,需要配置加速器,在菜单中点击 `Preferences...`,然后查看 `Advanced` 标签,在其中的 `Registry mirrors` 部分里可以点击加号来添加加速器地址。*
-
+
启动终端后,通过命令可以检查安装后的 Docker 版本。
@@ -63,7 +63,7 @@ $ docker run -d -p 80:80 --name webserver nginx
服务运行后,可以访问 ,如果看到了 "Welcome to nginx!",就说明 Docker for Mac 安装成功了。
-
+
要停止 Nginx 服务器并删除执行下面的命令:
diff --git a/_images/docker.png b/introduction/_images/docker.png
similarity index 100%
rename from _images/docker.png
rename to introduction/_images/docker.png
diff --git a/_images/virtualization.png b/introduction/_images/virtualization.png
similarity index 100%
rename from _images/virtualization.png
rename to introduction/_images/virtualization.png
diff --git a/introduction/what.md b/introduction/what.md
index 6e8330b..78a07ae 100644
--- a/introduction/what.md
+++ b/introduction/what.md
@@ -10,6 +10,6 @@ Docker 在容器的基础上,进行了进一步的封装,从文件系统、
下面的图片比较了 Docker 和传统虚拟化方式的不同之处。传统虚拟机技术是虚拟出一套硬件后,在其上运行一个完整操作系统,在该系统上再运行所需应用进程;而容器内的应用进程直接运行于宿主的内核,容器内没有自己的内核,而且也没有进行硬件虚拟。因此容器要比传统虚拟机更为轻便。
-![传统虚拟化](../_images/virtualization.png)
+![传统虚拟化](_images/virtualization.png)
-![Docker](../_images/docker.png)
+![Docker](_images/docker.png)
diff --git a/_images/k8s-singlenode-docker.png b/kubernetes/_images/k8s-singlenode-docker.png
similarity index 100%
rename from _images/k8s-singlenode-docker.png
rename to kubernetes/_images/k8s-singlenode-docker.png
diff --git a/_images/k8s_architecture.png b/kubernetes/_images/k8s_architecture.png
similarity index 100%
rename from _images/k8s_architecture.png
rename to kubernetes/_images/k8s_architecture.png
diff --git a/_images/kube-proxy.png b/kubernetes/_images/kube-proxy.png
similarity index 100%
rename from _images/kube-proxy.png
rename to kubernetes/_images/kube-proxy.png
diff --git a/_images/kubernetes_design.jpg b/kubernetes/_images/kubernetes_design.jpg
similarity index 100%
rename from _images/kubernetes_design.jpg
rename to kubernetes/_images/kubernetes_design.jpg
diff --git a/_images/kubernetes_logo.png b/kubernetes/_images/kubernetes_logo.png
similarity index 100%
rename from _images/kubernetes_logo.png
rename to kubernetes/_images/kubernetes_logo.png
diff --git a/_images/kubernetes_logo.svg b/kubernetes/_images/kubernetes_logo.svg
similarity index 100%
rename from _images/kubernetes_logo.svg
rename to kubernetes/_images/kubernetes_logo.svg
diff --git a/kubernetes/concepts.md b/kubernetes/concepts.md
index 8c6084d..4f1b5e4 100644
--- a/kubernetes/concepts.md
+++ b/kubernetes/concepts.md
@@ -1,6 +1,6 @@
# 基本概念
-![](../_images/kubernetes_design.jpg)
+![](_images/kubernetes_design.jpg)
* 节点(Node):一个节点是一个运行 Kubernetes 中的主机。
* 容器组(Pod):一个 Pod 对应于由若干容器组成的一个容器组,同个组内的容器共享一个存储卷(volume)。
diff --git a/kubernetes/design.md b/kubernetes/design.md
index 7f76767..4f2ed2e 100644
--- a/kubernetes/design.md
+++ b/kubernetes/design.md
@@ -13,7 +13,7 @@
下面这张图完整展示了 Kubernetes 的运行原理。
-![Kubernetes 架构](../_images/k8s_architecture.png)
+![Kubernetes 架构](_images/k8s_architecture.png)
可见,Kubernetes 首先是一套分布式系统,由多个节点组成,节点分为两类:一类是属于管理平面的主节点/控制节点(Master Node);一类是属于运行平面的工作节点(Worker Node)。
@@ -39,4 +39,4 @@
* kubelet 是工作节点执行操作的 agent,负责具体的容器生命周期管理,根据从数据库中获取的信息来管理容器,并上报 pod 运行状态等;
* kube-proxy 是一个简单的网络访问代理,同时也是一个 Load Balancer。它负责将访问到某个服务的请求具体分配给工作节点上的 Pod(同一类标签)。
-![Proxy 代理对服务的请求](../_images/kube-proxy.png)
+![Proxy 代理对服务的请求](_images/kube-proxy.png)
diff --git a/kubernetes/intro.md b/kubernetes/intro.md
index 0dcb7a7..18c2274 100644
--- a/kubernetes/intro.md
+++ b/kubernetes/intro.md
@@ -1,6 +1,6 @@
# 项目简介
-![](../_images/kubernetes_logo.png)
+![](_images/kubernetes_logo.png)
Kubernetes 是 Google 团队发起的开源项目,它的目标是管理跨多个主机的容器,提供基本的部署,维护以及运用伸缩,主要实现语言为Go语言。Kubernetes是:
* 易学:轻量级,简单,容易理解
diff --git a/kubernetes/quickstart.md b/kubernetes/quickstart.md
index d245e44..6d4f49b 100644
--- a/kubernetes/quickstart.md
+++ b/kubernetes/quickstart.md
@@ -4,7 +4,7 @@
下图展示了在单节点使用 Docker 快速部署一套 Kubernetes 的拓扑。
-![在 Docker 中启动 Kubernetes](../_images/k8s-singlenode-docker.png)
+![在 Docker 中启动 Kubernetes](_images/k8s-singlenode-docker.png)
Kubernetes 依赖 Etcd 服务来维护所有主节点的状态。
diff --git a/_images/docker_machine.png b/machine/_images/docker_machine.png
similarity index 100%
rename from _images/docker_machine.png
rename to machine/_images/docker_machine.png
diff --git a/machine/intro.md b/machine/intro.md
index 46726b5..e20ba1e 100644
--- a/machine/intro.md
+++ b/machine/intro.md
@@ -1,6 +1,6 @@
## 简介
-![Docker Machine](../_images/docker_machine.png)
+![Docker Machine](_images/docker_machine.png)
Docker Machine 项目基于 Go 语言实现,目前在 [Github](https://github.com/docker/machine) 上进行维护。
diff --git a/_images/docker_arch.png b/underly/_images/docker_arch.png
similarity index 100%
rename from _images/docker_arch.png
rename to underly/_images/docker_arch.png
diff --git a/underly/arch.md b/underly/arch.md
index 974aa6f..a58f5ab 100644
--- a/underly/arch.md
+++ b/underly/arch.md
@@ -3,7 +3,7 @@ Docker 采用了 C/S架构,包括客户端和服务端。
Docker daemon 作为服务端接受来自客户的请求,并处理这些请求(创建、运行、分发容器)。
客户端和服务端既可以运行在一个机器上,也可通过 socket 或者 RESTful API 来进行通信。
-![Docker 基本架构](../_images/docker_arch.png)
+![Docker 基本架构](_images/docker_arch.png)
Docker daemon 一般在宿主主机后台运行,等待接收来自客户端的消息。