Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
PaddlePaddle
PaddleDetection
提交
e8a8f262
P
PaddleDetection
项目概览
PaddlePaddle
/
PaddleDetection
大约 1 年 前同步成功
通知
694
Star
11112
Fork
2696
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
184
列表
看板
标记
里程碑
合并请求
40
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
P
PaddleDetection
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
184
Issue
184
列表
看板
标记
里程碑
合并请求
40
合并请求
40
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
e8a8f262
编写于
11月 24, 2018
作者:
M
minqiyang
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Add Python3.6 and Python3.7 support in Ubuntu Dockerfile
test=develop
上级
a5ddd827
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
118 addition
and
82 deletion
+118
-82
Dockerfile
Dockerfile
+118
-82
未找到文件。
Dockerfile
浏览文件 @
e8a8f262
...
@@ -22,6 +22,27 @@ ENV HOME /root
...
@@ -22,6 +22,27 @@ ENV HOME /root
# Add bash enhancements
# Add bash enhancements
COPY
./paddle/scripts/docker/root/ /root/
COPY
./paddle/scripts/docker/root/ /root/
# Prepare packages for Python
RUN
apt-get update
&&
\
apt-get
install
-y
make build-essential libssl-dev zlib1g-dev libbz2-dev
\
libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev
\
xz-utils tk-dev libffi-dev liblzma-dev
# Install Python3.6
RUN
mkdir
-p
/root/python_build/
&&
wget
-q
https://www.sqlite.org/2018/sqlite-autoconf-3250300.tar.gz
&&
\
tar
-zxf
sqlite-autoconf-3250300.tar.gz
&&
cd
sqlite-autoconf-3250300
&&
\
./configure
-prefix
=
/usr/local
&&
make
-j8
&&
make
install
&&
cd
../
&&
rm
sqlite-autoconf-3250300.tar.gz
&&
\
wget
-q
https://www.python.org/ftp/python/3.6.0/Python-3.6.0.tgz
&&
\
tar
-xzf
Python-3.6.0.tgz
&&
cd
Python-3.6.0
&&
\
CFLAGS
=
"-Wformat"
./configure
--prefix
=
/usr/local/python3.6
--enable-shared
>
/dev/null
&&
\
make
-j8
>
/dev/null
&&
make altinstall
>
/dev/null
# Install Python3.7
RUN
wget
-q
https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tgz
&&
\
tar
-xzf
Python-3.7.0.tgz
&&
cd
Python-3.7.0
&&
\
CFLAGS
=
"-Wformat"
./configure
--prefix
=
/usr/local/python3.7
--enable-shared
>
/dev/null
&&
\
make
-j8
>
/dev/null
&&
make altinstall
>
/dev/null
RUN
apt-get update
&&
\
RUN
apt-get update
&&
\
apt-get
install
-y
--allow-downgrades
patchelf
\
apt-get
install
-y
--allow-downgrades
patchelf
\
python3 python3-dev python3-pip
\
python3 python3-dev python3-pip
\
...
@@ -34,88 +55,103 @@ RUN apt-get update && \
...
@@ -34,88 +55,103 @@ RUN apt-get update && \
liblapack-dev liblapacke-dev
\
liblapack-dev liblapacke-dev
\
clang-3.8 llvm-3.8 libclang-3.8-dev
\
clang-3.8 llvm-3.8 libclang-3.8-dev
\
build-essential checkinstall
\
build-essential checkinstall
\
libreadline-
gplv2-
dev libncursesw5-dev libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev
\
libreadline-dev libncursesw5-dev libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev
\
net-tools libtool ccache
&&
\
net-tools libtool ccache
&&
\
apt-get clean
-y
apt-get clean
-y
COPY
tools/manylinux1/build_scripts/* /root/python/
# Install Go and glide
RUN
cd
/root/python/
&&
source
build_utils
&&
MY_DIR
=
/root/python/ build_cpythons 3.6.0 3.7.0
RUN
wget
-qO-
https://storage.googleapis.com/golang/go1.8.1.linux-amd64.tar.gz |
\
tar
-xz
-C
/usr/local
&&
\
# # Install Go and glide
mkdir
/root/gopath
&&
\
# RUN wget -qO- https://storage.googleapis.com/golang/go1.8.1.linux-amd64.tar.gz | \
mkdir
/root/gopath/bin
&&
\
# tar -xz -C /usr/local && \
mkdir
/root/gopath/src
# mkdir /root/gopath && \
ENV
GOROOT=/usr/local/go GOPATH=/root/gopath
# mkdir /root/gopath/bin && \
# should not be in the same line with GOROOT definition, otherwise docker build could not find GOROOT.
# mkdir /root/gopath/src
ENV
PATH=${PATH}:${GOROOT}/bin:${GOPATH}/bin
# ENV GOROOT=/usr/local/go GOPATH=/root/gopath
# install glide
# # should not be in the same line with GOROOT definition, otherwise docker build could not find GOROOT.
RUN
curl
-s
-q
https://glide.sh/get | sh
# ENV PATH=${PATH}:${GOROOT}/bin:${GOPATH}/bin
# # install glide
# Install TensorRT
# RUN curl -s -q https://glide.sh/get | sh
# following TensorRT.tar.gz is not the default official one, we do two miny changes:
# 1. Remove the unnecessary files to make the library small. TensorRT.tar.gz only contains include and lib now,
# # Install TensorRT
# and its size is only one-third of the official one.
# # following TensorRT.tar.gz is not the default official one, we do two miny changes:
# 2. Manually add ~IPluginFactory() in IPluginFactory class of NvInfer.h, otherwise, it couldn't work in paddle.
# # 1. Remove the unnecessary files to make the library small. TensorRT.tar.gz only contains include and lib now,
# See https://github.com/PaddlePaddle/Paddle/issues/10129 for details.
# # and its size is only one-third of the official one.
RUN
wget
-qO-
http://paddlepaddledeps.cdn.bcebos.com/TensorRT-4.0.0.3.Ubuntu-16.04.4.x86_64-gnu.cuda-8.0.cudnn7.0.tar.gz |
\
# # 2. Manually add ~IPluginFactory() in IPluginFactory class of NvInfer.h, otherwise, it couldn't work in paddle.
tar
-xz
-C
/usr/local
&&
\
# # See https://github.com/PaddlePaddle/Paddle/issues/10129 for details.
cp
-rf
/usr/local/TensorRT/include /usr
&&
\
# RUN wget -qO- http://paddlepaddledeps.cdn.bcebos.com/TensorRT-4.0.0.3.Ubuntu-16.04.4.x86_64-gnu.cuda-8.0.cudnn7.0.tar.gz | \
cp
-rf
/usr/local/TensorRT/lib /usr
# tar -xz -C /usr/local && \
# cp -rf /usr/local/TensorRT/include /usr && \
# git credential to skip password typing
# cp -rf /usr/local/TensorRT/lib /usr
RUN
git config
--global
credential.helper store
# # git credential to skip password typing
# Fix locales to en_US.UTF-8
# RUN git config --global credential.helper store
RUN
localedef
-i
en_US
-f
UTF-8 en_US.UTF-8
# # Fix locales to en_US.UTF-8
# FIXME: due to temporary ipykernel dependency issue, specify ipykernel jupyter
# RUN localedef -i en_US -f UTF-8 en_US.UTF-8
# version util jupyter fixes this issue.
# # FIXME: due to temporary ipykernel dependency issue, specify ipykernel jupyter
# specify sphinx version as 1.5.6 and remove -U option for [pip install -U
# # version util jupyter fixes this issue.
# sphinx-rtd-theme] since -U option will cause sphinx being updated to newest
# version(1.7.1 for now), which causes building documentation failed.
# # specify sphinx version as 1.5.6 and remove -U option for [pip install -U
RUN
pip3.5
install
-U
wheel
&&
\
# # sphinx-rtd-theme] since -U option will cause sphinx being updated to newest
pip3.5
install
-U
docopt PyYAML
sphinx
==
1.5.6
&&
\
# # version(1.7.1 for now), which causes building documentation failed.
pip3.5
install
sphinx-rtd-theme
==
0.1.9 recommonmark
&&
\
# RUN pip3 install -U wheel && \
pip3.6
install
-U
wheel
&&
\
# pip3 install -U docopt PyYAML sphinx==1.5.6 && \
pip3.6
install
-U
docopt PyYAML
sphinx
==
1.5.6
&&
\
# pip3 install sphinx-rtd-theme==0.1.9 recommonmark && \
pip3.6
install
sphinx-rtd-theme
==
0.1.9 recommonmark
&&
\
# easy_install -U pip && \
pip3.7
install
-U
wheel
&&
\
# pip install -U pip setuptools wheel && \
pip3.7
install
-U
docopt PyYAML
sphinx
==
1.5.6
&&
\
# pip install -U docopt PyYAML sphinx==1.5.6 && \
pip3.7
install
sphinx-rtd-theme
==
0.1.9 recommonmark
&&
\
# pip install sphinx-rtd-theme==0.1.9 recommonmark
easy_install
-U
pip
&&
\
pip
install
-U
pip setuptools wheel
&&
\
# RUN pip3 install 'pre-commit==1.10.4' 'ipython==5.3.0' && \
pip
install
-U
docopt PyYAML
sphinx
==
1.5.6
&&
\
# pip3 install 'ipykernel==4.6.0' 'jupyter==1.0.0' && \
pip
install
sphinx-rtd-theme
==
0.1.9 recommonmark
# pip3 install opencv-python && \
# pip install 'pre-commit==1.10.4' 'ipython==5.3.0' && \
RUN
pip3.5
install
'pre-commit==1.10.4'
'ipython==5.3.0'
&&
\
# pip install 'ipykernel==4.6.0' 'jupyter==1.0.0' && \
pip3.5
install
'ipykernel==4.6.0'
'jupyter==1.0.0'
&&
\
# pip install opencv-python
pip3.5
install
opencv-python
&&
\
pip3.6
install
'pre-commit==1.10.4'
'ipython==5.3.0'
&&
\
# #For docstring checker
pip3.6
install
'ipykernel==4.6.0'
'jupyter==1.0.0'
&&
\
# RUN pip3 install pylint pytest astroid isort
pip3.6
install
opencv-python
&&
\
# RUN pip install pylint pytest astroid isort LinkChecker
pip3.7
install
'pre-commit==1.10.4'
'ipython==5.3.0'
&&
\
pip3.7
install
'ipykernel==4.6.0'
'jupyter==1.0.0'
&&
\
# COPY ./python/requirements.txt /root/
pip3.7
install
opencv-python
&&
\
# RUN pip3 install -r /root/requirements.txt
pip
install
'pre-commit==1.10.4'
'ipython==5.3.0'
&&
\
# RUN pip install -r /root/requirements.txt
pip
install
'ipykernel==4.6.0'
'jupyter==1.0.0'
&&
\
pip
install
opencv-python
# # To fix https://github.com/PaddlePaddle/Paddle/issues/1954, we use
# # the solution in https://urllib3.readthedocs.io/en/latest/user-guide.html#ssl-py2
#For docstring checker
# RUN apt-get install -y libssl-dev libffi-dev
RUN
pip3.5
install
pylint pytest astroid isort
# RUN pip3 install certifi urllib3[secure]
RUN
pip3.6
install
pylint pytest astroid isort
# RUN pip install certifi urllib3[secure]
RUN
pip3.7
install
pylint pytest astroid isort
RUN
pip
install
pylint pytest astroid isort LinkChecker
# # Install woboq_codebrowser to /woboq
COPY
./python/requirements.txt /root/
# RUN git clone https://github.com/woboq/woboq_codebrowser /woboq && \
RUN
pip3.5
install
-r
/root/requirements.txt
# (cd /woboq \
RUN
pip3.6
install
-r
/root/requirements.txt
# cmake -DLLVM_CONFIG_EXECUTABLE=/usr/bin/llvm-config-3.8 \
RUN
pip3.7
install
-r
/root/requirements.txt
# -DCMAKE_BUILD_TYPE=Release . \
RUN
pip
install
-r
/root/requirements.txt
# make)
# To fix https://github.com/PaddlePaddle/Paddle/issues/1954, we use
# # Configure OpenSSH server. c.f. https://docs.docker.com/engine/examples/running_ssh_service
# the solution in https://urllib3.readthedocs.io/en/latest/user-guide.html#ssl-py2
# RUN mkdir /var/run/sshd
RUN
apt-get
install
-y
libssl-dev libffi-dev
# RUN echo 'root:root' | chpasswd
RUN
pip3.5
install
certifi urllib3[secure]
# RUN sed -ri 's/^PermitRootLogin\s+.*/PermitRootLogin yes/' /etc/ssh/sshd_config
RUN
pip3.6
install
certifi urllib3[secure]
# RUN sed -ri 's/UsePAM yes/#UsePAM yes/g' /etc/ssh/sshd_config
RUN
pip3.7
install
certifi urllib3[secure]
# EXPOSE 22
RUN
pip
install
certifi urllib3[secure]
# Install woboq_codebrowser to /woboq
RUN
git clone https://github.com/woboq/woboq_codebrowser /woboq
&&
\
(
cd
/woboq
\
cmake
-DLLVM_CONFIG_EXECUTABLE
=
/usr/bin/llvm-config-3.8
\
-DCMAKE_BUILD_TYPE
=
Release
.
\
make
)
# Configure OpenSSH server. c.f. https://docs.docker.com/engine/examples/running_ssh_service
RUN
mkdir
/var/run/sshd
RUN
echo
'root:root'
| chpasswd
RUN
sed
-ri
's/^PermitRootLogin\s+.*/PermitRootLogin yes/'
/etc/ssh/sshd_config
RUN
sed
-ri
's/UsePAM yes/#UsePAM yes/g'
/etc/ssh/sshd_config
EXPOSE
22
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录