From 5faaef51605fd86280802c164af6c2915bb74130 Mon Sep 17 00:00:00 2001 From: realityone Date: Tue, 8 Sep 2015 10:46:29 +0800 Subject: [PATCH 1/7] Update README.md remove meaningless spaces --- README.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index e148bb5..d038743 100644 --- a/README.md +++ b/README.md @@ -12,7 +12,7 @@ FROM ubuntu:trusty ``` -> 因所有官方镜像均位于境外服务器,为了确保所有示例能正常运行,DaoCloud 提供了一套境内镜像源,并与官方源保持同步。如果使用 DaoCloud 的镜像源,则指向:`FROM daocloud.io/ubuntu:trusty` +> 因所有官方镜像均位于境外服务器,为了确保所有示例能正常运行,DaoCloud 提供了一套境内镜像源,并与官方源保持同步。如果使用 DaoCloud 的镜像源,则指向:`FROM daocloud.io/ubuntu:trusty`。 设置镜像的维护者,相当于镜像的作者或发行方。 @@ -24,7 +24,7 @@ MAINTAINER Captain Dao > 安装依赖包相对比较固定,因此该动作应该尽量提前,这样做有助于提高镜像层的复用率。 > -> 安装完依赖后打扫卫生可以显著的减少镜像大小 +> 安装完依赖后打扫卫生可以显著的减少镜像大小。 ``` dockerfile RUN apt-get update && \ @@ -34,7 +34,7 @@ RUN apt-get update && \ rm -rf /var/lib/apt/lists/* ``` -> 以下是一个不建议的做法 , 原因是比上述命令多添加了一层镜像,然而并没有降低总镜像的体积 。 +> 以下是一个不建议的做法,原因是比上述命令多添加了一层镜像,然而并没有降低总镜像的体积。 ``` dockerfile RUN apt-get update && \ @@ -65,9 +65,9 @@ EXPOSE 80 CMD ["bash"] ``` -至此一个 PYTHON 的基础镜像制作完毕,你可以在本地运行 `docker build -t my-python-base .` 来构建出这个镜像并命名为 `my-python-base`。 +至此一个 Python 的基础镜像制作完毕,你可以在本地运行 `docker build -t my-python-base .` 来构建出这个镜像并命名为 `my-python-base`。 -PYTHON 家族成员众多 ,因此需要一个通用的基础镜像 ,并在此基础上根据需求进行定制。 +Python 家族成员众多,因此需要一个通用的基础镜像,并在此基础上根据需求进行定制。 > 由于网络环境的特殊情况,在本地运行 `docker build` 的时间会很长,并且有可能失败。推荐使用 **[DaoCloud 加速器](http://help.daocloud.io/intro/accelerator.html)** 和 DaoCloud 的云端 **[代码构建](http://help.daocloud.io/features/build-flows.html)** 功能。 From 306f17f0dbc717f4bd42d3e5ec73f0dd7e3a9e8c Mon Sep 17 00:00:00 2001 From: realityone Date: Tue, 8 Sep 2015 15:14:01 +0800 Subject: [PATCH 2/7] explicit words --- Dockerfile | 4 ++-- README.md | 30 +++++++++++++++--------------- 2 files changed, 17 insertions(+), 17 deletions(-) diff --git a/Dockerfile b/Dockerfile index 629cefb..6605bbd 100644 --- a/Dockerfile +++ b/Dockerfile @@ -6,8 +6,8 @@ MAINTAINER Captain Dao # APT 自动安装 PHP 相关的依赖包,如需其他依赖包在此添加 RUN apt-get update && \ - apt-get install -y python \ - python-dev \ + apt-get install -y python \ + python-dev \ python-pip \ # 用完包管理器后安排打扫卫生可以显著的减少镜像大小 && apt-get clean \ diff --git a/README.md b/README.md index d038743..726376e 100644 --- a/README.md +++ b/README.md @@ -1,26 +1,28 @@ -# 如何制作一个定制的 Python 基础 Docker 镜像 +## 如何制作一个定制的 Python 基础 Docker 镜像 > 目标:准备一个定制的 Python 基础镜像。基础镜像,通常为含最小功能的系统镜像,之后的应用镜像都以此为基础。 > > 本项目代码维护在 **[DaoCloud/python-sample-base-image](https://github.com/DaoCloud/python-sample-base-image)** 项目中。 +> +> 您可以在 GitHub 找到本项目并获取本文中所提到的所有脚本文件。 -### 制作基础镜像 +#### 制作基础镜像 -选择 Ubuntu 官方的 14.04 版本为我们依赖的系统镜像。 +- 选择 Ubuntu 官方的 14.04 版本为我们依赖的系统镜像。 ``` dockerfile FROM ubuntu:trusty ``` -> 因所有官方镜像均位于境外服务器,为了确保所有示例能正常运行,DaoCloud 提供了一套境内镜像源,并与官方源保持同步。如果使用 DaoCloud 的镜像源,则指向:`FROM daocloud.io/ubuntu:trusty`。 +> 因所有官方镜像均位于境外服务器,为了确保所有示例能正常运行,DaoCloud 提供了一套境内镜像源,并与官方源保持同步。如果使用 DaoCloud 的镜像源,则修改为:`FROM daocloud.io/ubuntu:trusty`。 -设置镜像的维护者,相当于镜像的作者或发行方。 +- 设置镜像的维护者,相当于镜像的作者或发行方。 ``` dockerfile MAINTAINER Captain Dao ``` -用 RUN 命令调用 apt-get 包管理器安装 Python 环境所依赖的程序包。 +- 用 `RUN` 命令调用 apt-get 包管理器安装 Python 环境所依赖的程序包。 > 安装依赖包相对比较固定,因此该动作应该尽量提前,这样做有助于提高镜像层的复用率。 > @@ -34,7 +36,7 @@ RUN apt-get update && \ rm -rf /var/lib/apt/lists/* ``` -> 以下是一个不建议的做法,原因是比上述命令多添加了一层镜像,然而并没有降低总镜像的体积。 +> *以下是一个不建议的做法,原因是比上述命令多添加了一层镜像,然而并没有降低总镜像的体积。* ``` dockerfile RUN apt-get update && \ @@ -44,34 +46,32 @@ RUN apt-get update && \ RUN rm -rf /var/lib/apt/lists/* ``` -用 RUN 命令调用 mkdir 来准备一个干净的放置代码的目录。 +- 用 `RUN` 命令调用 `mkdir` 来准备一个干净的放置代码的目录。 ``` dockerfile RUN mkdir -p /app ``` -指定其为当前的工作目录。 +- 指定其为当前的工作目录。 ``` dockerfile WORKDIR /app ``` -指定暴露的容器内端口地址。 - -最后设置默认启动命令。 +- 指定暴露的容器内端口地址,最后设置默认启动命令。 ``` dockerfile EXPOSE 80 CMD ["bash"] ``` -至此一个 Python 的基础镜像制作完毕,你可以在本地运行 `docker build -t my-python-base .` 来构建出这个镜像并命名为 `my-python-base`。 +至此一个 Python 的基础镜像制作完毕,您可以在本地运行 `docker build -t my-python-base .` 来构建出这个镜像并命名为 `my-python-base`。 Python 家族成员众多,因此需要一个通用的基础镜像,并在此基础上根据需求进行定制。 -> 由于网络环境的特殊情况,在本地运行 `docker build` 的时间会很长,并且有可能失败。推荐使用 **[DaoCloud 加速器](http://help.daocloud.io/intro/accelerator.html)** 和 DaoCloud 的云端 **[代码构建](http://help.daocloud.io/features/build-flows.html)** 功能。 +> 由于国内网络环境的特殊,在本地运行 `docker build` 的时间会很长,并且有可能失败。推荐使用 **[DaoCloud 加速器](http://help.daocloud.io/intro/accelerator.html)** 和 DaoCloud 的云端 **[代码构建](http://help.daocloud.io/features/build-flows.html)** 功能。 -### 完整 Dockerfile +#### 完整 Dockerfile ``` dockerfile # Ubuntu 14.04,Trusty Tahr(可靠的塔尔羊)发行版 From ec901656926fc38b7823f73a2df9abdd102c80b0 Mon Sep 17 00:00:00 2001 From: golfen Date: Tue, 8 Sep 2015 23:18:18 +0800 Subject: [PATCH 3/7] from daocloud image --- README.md | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 726376e..01496c1 100644 --- a/README.md +++ b/README.md @@ -14,7 +14,11 @@ FROM ubuntu:trusty ``` -> 因所有官方镜像均位于境外服务器,为了确保所有示例能正常运行,DaoCloud 提供了一套境内镜像源,并与官方源保持同步。如果使用 DaoCloud 的镜像源,则修改为:`FROM daocloud.io/ubuntu:trusty`。 +> 因所有官方镜像均位于境外服务器,为了确保所有示例能正常运行,可以使用与官方镜像保持同步的 DaoCloud 境内镜像: + +``` dockerfile +FROM daocloud.io/ubuntu:trusty +``` - 设置镜像的维护者,相当于镜像的作者或发行方。 @@ -69,13 +73,13 @@ CMD ["bash"] Python 家族成员众多,因此需要一个通用的基础镜像,并在此基础上根据需求进行定制。 -> 由于国内网络环境的特殊,在本地运行 `docker build` 的时间会很长,并且有可能失败。推荐使用 **[DaoCloud 加速器](http://help.daocloud.io/intro/accelerator.html)** 和 DaoCloud 的云端 **[代码构建](http://help.daocloud.io/features/build-flows.html)** 功能。 +> 由于国内网络环境的特殊,在本地运行 `docker build` 的时间会很长,并且有可能失败。推荐使用 **[DaoCloud Toolbox](http://blog.daocloud.io/toolbox)** 和 DaoCloud 的云端 **[代码构建](http://help.daocloud.io/features/build-flows.html)** 功能。 #### 完整 Dockerfile ``` dockerfile # Ubuntu 14.04,Trusty Tahr(可靠的塔尔羊)发行版 -FROM ubuntu:trusty +FROM daocloud.io/ubuntu:trusty # 道客船长荣誉出品 MAINTAINER Captain Dao From 5696b5fb41d301d1e09ba912334259cddfa75c80 Mon Sep 17 00:00:00 2001 From: realityone Date: Wed, 9 Sep 2015 17:34:15 +0800 Subject: [PATCH 4/7] fix referenced code block --- README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 01496c1..0d1a361 100644 --- a/README.md +++ b/README.md @@ -15,10 +15,10 @@ FROM ubuntu:trusty ``` > 因所有官方镜像均位于境外服务器,为了确保所有示例能正常运行,可以使用与官方镜像保持同步的 DaoCloud 境内镜像: - -``` dockerfile -FROM daocloud.io/ubuntu:trusty -``` +> +>``` dockerfile +>FROM daocloud.io/ubuntu:trusty +>``` - 设置镜像的维护者,相当于镜像的作者或发行方。 From 7499095a8e3f7dbd93a64cd66a973602bf5246d7 Mon Sep 17 00:00:00 2001 From: realityone Date: Wed, 9 Sep 2015 17:36:43 +0800 Subject: [PATCH 5/7] fix referenced code block --- README.md | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index 0d1a361..20ab2b0 100644 --- a/README.md +++ b/README.md @@ -41,14 +41,14 @@ RUN apt-get update && \ ``` > *以下是一个不建议的做法,原因是比上述命令多添加了一层镜像,然而并没有降低总镜像的体积。* - -``` dockerfile -RUN apt-get update && \ - apt-get install -y python \ - python-dev \ - python-pip -RUN rm -rf /var/lib/apt/lists/* -``` +> +>``` dockerfile +>RUN apt-get update && \ +> apt-get install -y python \ +> python-dev \ +> python-pip +>RUN rm -rf /var/lib/apt/lists/* +>``` - 用 `RUN` 命令调用 `mkdir` 来准备一个干净的放置代码的目录。 From dac1abc9bf9a5611d4df03e9047f46af4037f488 Mon Sep 17 00:00:00 2001 From: Wenxuan Zhao Date: Thu, 10 Sep 2015 00:32:49 -0300 Subject: [PATCH 6/7] style fixes --- README.md | 31 +++++++++++++++---------------- 1 file changed, 15 insertions(+), 16 deletions(-) diff --git a/README.md b/README.md index 20ab2b0..1ea8c17 100644 --- a/README.md +++ b/README.md @@ -8,31 +8,31 @@ #### 制作基础镜像 -- 选择 Ubuntu 官方的 14.04 版本为我们依赖的系统镜像。 +* 选择 Ubuntu 官方的 14.04 版本为我们依赖的系统镜像。 -``` dockerfile +```dockerfile FROM ubuntu:trusty ``` > 因所有官方镜像均位于境外服务器,为了确保所有示例能正常运行,可以使用与官方镜像保持同步的 DaoCloud 境内镜像: > ->``` dockerfile +>```dockerfile >FROM daocloud.io/ubuntu:trusty >``` -- 设置镜像的维护者,相当于镜像的作者或发行方。 +* 设置镜像的维护者,相当于镜像的作者或发行方。 -``` dockerfile +```dockerfile MAINTAINER Captain Dao ``` -- 用 `RUN` 命令调用 apt-get 包管理器安装 Python 环境所依赖的程序包。 +* 用 `RUN` 命令调用 apt-get 包管理器安装 Python 环境所依赖的程序包。 > 安装依赖包相对比较固定,因此该动作应该尽量提前,这样做有助于提高镜像层的复用率。 > > 安装完依赖后打扫卫生可以显著的减少镜像大小。 -``` dockerfile +```dockerfile RUN apt-get update && \ apt-get install -y python \ python-dev \ @@ -42,7 +42,7 @@ RUN apt-get update && \ > *以下是一个不建议的做法,原因是比上述命令多添加了一层镜像,然而并没有降低总镜像的体积。* > ->``` dockerfile +>```dockerfile >RUN apt-get update && \ > apt-get install -y python \ > python-dev \ @@ -50,21 +50,21 @@ RUN apt-get update && \ >RUN rm -rf /var/lib/apt/lists/* >``` -- 用 `RUN` 命令调用 `mkdir` 来准备一个干净的放置代码的目录。 +* 用 `RUN` 命令调用 `mkdir` 来准备一个干净的放置代码的目录。 -``` dockerfile +```dockerfile RUN mkdir -p /app ``` -- 指定其为当前的工作目录。 +* 指定其为当前的工作目录。 -``` dockerfile +```dockerfile WORKDIR /app ``` -- 指定暴露的容器内端口地址,最后设置默认启动命令。 +* 指定暴露的容器内端口地址,最后设置默认启动命令。 -``` dockerfile +```dockerfile EXPOSE 80 CMD ["bash"] ``` @@ -77,7 +77,7 @@ Python 家族成员众多,因此需要一个通用的基础镜像,并在此 #### 完整 Dockerfile -``` dockerfile +```dockerfile # Ubuntu 14.04,Trusty Tahr(可靠的塔尔羊)发行版 FROM daocloud.io/ubuntu:trusty @@ -94,7 +94,6 @@ RUN apt-get update && \ && apt-get autoclean \ && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* - # 配置默认放置 App 的目录 RUN mkdir -p /app WORKDIR /app From e66bbd28bdf27859bf2a685da75718301cecdc87 Mon Sep 17 00:00:00 2001 From: yaoelvon Date: Thu, 21 Apr 2016 15:44:18 +0800 Subject: [PATCH 7/7] =?UTF-8?q?=E5=8E=BB=E9=99=A4=E6=B3=A8=E9=87=8A?= =?UTF-8?q?=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 这里是安装python相关的依赖包,并不是php相关的依赖包 --- Dockerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index 6605bbd..64275f0 100644 --- a/Dockerfile +++ b/Dockerfile @@ -4,7 +4,7 @@ FROM ubuntu:trusty # 道客船长荣誉出品 MAINTAINER Captain Dao -# APT 自动安装 PHP 相关的依赖包,如需其他依赖包在此添加 +# APT 自动安装 Python 相关的依赖包,如需其他依赖包在此添加 RUN apt-get update && \ apt-get install -y python \ python-dev \ @@ -19,4 +19,4 @@ RUN apt-get update && \ RUN mkdir -p /app WORKDIR /app EXPOSE 80 -CMD ["bash"] \ No newline at end of file +CMD ["bash"]