DOCKER.md 2.1 KB
Newer Older
M
MRXLT 已提交
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84
#使用docker编译Paddle Serving

## docker编译环境要求

+ 开发机上已安装docker
+ 编译GPU版本需要安装nvidia-docker

## CPU版本dockerfile

```bash
FROM centos:centos6.10
RUN yum -y install wget \
    && wget http://people.centos.org/tru/devtools-2/devtools-2.repo -O /etc/yum.repos.d/devtoolset-2.repo \
    && yum -y install devtoolset-2-gcc devtoolset-2-gcc-c++ devtoolset-2-binutils \
    && source /opt/rh/devtoolset-2/enable \
    && echo "source /opt/rh/devtoolset-2/enable" >> /etc/profile \
    && yum -y install git openssl-devel curl-devel bzip2-devel \
    && wget https://cmake.org/files/v3.5/cmake-3.5.2.tar.gz \
    && tar xvf cmake-3.5.2.tar.gz \
    && cd cmake-3.5.2 \
    &&  ./bootstrap --prefix=/usr \
    && make \
    && make install \
    && cd .. \
    && rm -r cmake-3.5.2* \
    && wget https://dl.google.com/go/go1.12.12.linux-amd64.tar.gz \
    && tar -xzvf go1.12.12.linux-amd64.tar.gz \
    && mv go /usr/local/go \
    && rm go1.12.12.linux-amd64.tar.gz \
    && echo "export GOROOT=/usr/local/go" >> /root/.bashrc \
    && echo "export GOPATH=$HOME/go" >> /root/.bashrc \
    && echo "export PATH=$PATH:/usr/local/go/bin" >> /root/.bashrc
```



##GPU版本dockerfile

```bash
FROM paddlepaddle/paddle_manylinux_devel:cuda9.0_cudnn7
RUN yum -y install git openssl-devel curl-devel bzip2-devel \
    && wget https://dl.google.com/go/go1.12.12.linux-amd64.tar.gz \
    && tar -xzvf go1.12.12.linux-amd64.tar.gz \
    && rm -rf /usr/local/go \
    && mv go /usr/local/go \
    && rm go1.12.12.linux-amd64.tar.gz \
    && echo "GOROOT=/usr/local/go" >> /root/.bashrc \
    && echo "GOPATH=$HOME/go" >> /root/.bashrc \
    && echo "PATH=$PATH:$GOROOT/bin" >> /root/.bashrc
```



## 使用方法

###构建docker镜像

建立新目录,复制dockerfile内容到目录下dockerfile文件

执行

```bash
docker build -t serving_compile:cpu .
```

或者

```bash
docker build -t serving_compile:cuda9 .
```

## 进入docker

CPU版本请执行

```bash
docker run -it serving_compile:cpu bash
```

GPU版本请执行

```bash
docker run -it --runtime=nvidia -it serving_compile:cuda9 bash
```