diff --git a/doc_cn/build/docker/build_docker_image.rst b/doc_cn/build/docker/build_docker_image.rst deleted file mode 100644 index 73409ceaff4e1a1f8ac3ad0d828e003a214c8fcb..0000000000000000000000000000000000000000 --- a/doc_cn/build/docker/build_docker_image.rst +++ /dev/null @@ -1,38 +0,0 @@ -构建PaddlePaddle Docker Image -=========================== - -PaddlePaddle的Docker Image构建源码放置在 :code:`${源码根目录}/paddle/scripts/docker/`目录下。 -该Image基于ubuntu 14.04。该目录下有两个文件,Dockerfile和build.sh。其中: - -* Dockerfile是docker image的主要描述文件。描述了Docker image的构建步骤、各种参数和维护 - 人员等等。 -* build.sh是docker image的主要构建步骤。 - -该image的构建在docker 1.12版本测试通过, 低于docker 1.12版本的情况下并没有测试。主要由于旧版本 -的docker可能缺乏 :code:`--build-arg` 参数,从而不能在运行编译命令的时候接受参数。 - -同时,该构建脚本充分考虑了网络不稳定的情况,对于cuda的Toolkit有断点续传和传输速度过小重启下载的 -简单优化。 - -使用脚本构建PaddlePaddle Docker Image -------------------------------------------- - -该脚本的使用方法是,进入该源码目录,执行 :code:`docker build .` 命令。可以使用 - :code:`--build-arg` 传入的配置参数包括: - -* LOWEST\_DL\_SPEED\: 多线程下载过程中,最低线程的下载速度(默认单位是Bytes,可以传入10K, - 10M,或者10G这样的单位)。如果小于这个下载速度,那么这个下载线程将会关闭。所有的下载线程关闭时, - 下载进程会重启。 -* WITH\_GPU\: ON or OFF。是否开启GPU功能。注意,编译PaddlePaddle的GPU版本并不需要一定在具有GPU - 的机器上进行。但是,运行PaddlePaddle的GPU版本一定要在具有CUDA的机器上运行。 - -简单的使用样例为\: - -.. code-block:: bash - - cd ${源码根目录}/paddle/scripts/docker/ - docker build --build-arg LOWEST_DL_SPEED=50K\ - --build-arg WITH_GPU=ON \ - --tag paddle_gpu:latest . - -即可在本地编译出PaddlePaddle的镜像。 diff --git a/doc_cn/build_and_install/index.rst b/doc_cn/build_and_install/index.rst index 2205e282248c4e7f6d1173be47aadf160554c6be..48163fb36e561fe5fd8f6907379687a8b5c97f68 100644 --- a/doc_cn/build_and_install/index.rst +++ b/doc_cn/build_and_install/index.rst @@ -8,9 +8,7 @@ PaddlePaddle提供数个预编译的二进制来进行安装,包括Docker镜 .. toctree:: :maxdepth: 1 - :glob: - 使用Jumbo安装(对内) <../build/internal/install_from_jumbo.rst> install/docker_install.rst install/ubuntu_install.rst @@ -25,8 +23,5 @@ PaddlePaddle提供数个预编译的二进制来进行安装,包括Docker镜 .. toctree:: :maxdepth: 1 - :glob: - 源码下载(对内) <../build/internal/download_paddle_source_zh_cn.rst> - 从源码编译安装(对内) <../build/internal/build_from_source_zh_cn.rst> cmake/index.rst diff --git a/doc_cn/howto/build_docker_image.rst b/doc_cn/howto/build_docker_image.rst new file mode 100644 index 0000000000000000000000000000000000000000..16887672f7afe4963e42c632959bd2200c18607f --- /dev/null +++ b/doc_cn/howto/build_docker_image.rst @@ -0,0 +1,35 @@ +构建PaddlePaddle的Docker Image +============================== +PaddlePaddle的Docker Image构建源码放置在 ``${源码根目录}/paddle/scripts/docker/`` 目录下。该目录有三类文件: + +- Dockerfile:Docker Image的描述文件,包括构建步骤、各种参数和维护人员等。 + + - 一共维护了12个Dockerfile,Dockerfile.m4是它们的模板。 + - PaddlePaddle中所有的Image都基于ubuntu 14.04。 + +- build.sh:Docker Image的构建脚本,使用方式见下一小节。 +- generate.sh:通过Dockerfile.m4模板生成不同的Dockerfile。 + +使用脚本构建Docker Image +------------------------ + +进入源码目录,执行 ``docker build`` 命令,即可在本地编译出PaddlePaddle的镜像。简单的使用样例为 + +.. code-block:: bash + + cd ${源码根目录}/paddle/scripts/docker/ + docker build --build-arg LOWEST_DL_SPEED=50K\ + --build-arg WITH_GPU=ON \ + --tag paddle_gpu:latest . + +其中,``--build-arg`` 传入的配置参数包括: + +- LOWEST\_DL\_SPEED\: 在多线程下载过程中,设置下线线程的最低速度。 + + - 默认单位是Bytes,但可以传入10K、10M、或10G等这样的单位。 + - 如果小于这个速度,那么这个线程将会关闭。当所有的线程都关闭了,那么下载进程将会重启。 +- WITH\_GPU\: ON or OFF,是否开启GPU功能。注意, + - **编译** PaddlePaddle的GPU版本 **不一定** 要在具有GPU的机器上进行。 + - **运行** PaddlePaddle的GPU版本 **一定** 要在具有GPU的机器上运行。 + +注意:所有Image的构建在Docker 1.12版本测试通过, 低于1.12的版本并没有测试。原因是旧版本可能缺乏 ``--build-arg`` 参数,从而不能在运行编译命令的时候接受参数。 diff --git a/doc_cn/index.rst b/doc_cn/index.rst index f1398206fddffca77f583c195e00034e55932639..c9f2126c3e36a019a1dbff2cfafd109eb58b77aa 100644 --- a/doc_cn/index.rst +++ b/doc_cn/index.rst @@ -16,6 +16,7 @@ PaddlePaddle文档 -------- * `新写Layer <../doc/dev/new_layer/index.html>`_ * `如何贡献文档 `_ +* `如何构建Docker Image `_ 算法教程 -------- diff --git a/paddle/scripts/docker/build.sh b/paddle/scripts/docker/build.sh index ec5f3bd967d3569ee058a2e12d85fc50ba25c69d..f8322316a561d670275d249b2e36453fd693af70 100644 --- a/paddle/scripts/docker/build.sh +++ b/paddle/scripts/docker/build.sh @@ -21,7 +21,7 @@ if [ ${WITH_GPU} == 'ON' ]; then fi cd ~ -git clone https://github.com/baidu/Paddle.git paddle +git clone https://github.com/PaddlePaddle/Paddle.git paddle cd paddle git checkout ${GIT_CHECKOUT} mkdir build