1、拉取ubuntu16.04纯净镜像

首先进入虚拟机管理员,将ubuntu16基础镜像从中心仓库拉下来,输入命令docker pull ubuntu:16.04,

docker就会自动下载ubuntu16的镜像了

ubuntu docker 打包镜像 docker制作ubuntu镜像_docker


docker images 查看下载好的镜像

ubuntu docker 打包镜像 docker制作ubuntu镜像_python_02


因为需要制作自己的容器,因此先下载好python3.7的tar包,这里我们选择编译安装

#在线下载python3.7,如果嫌慢可以先下载好直接拖进来
 wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tgz

ubuntu docker 打包镜像 docker制作ubuntu镜像_python_03

2、ubuntu16.04容器内安装Python3.7和Paddlepaddle

docker run -it -v $PWD:/home/root123 ubuntu:16.04 /bin/bash输入命令进入并运行容器,可以看见成功进入ubuntu容器了

ubuntu docker 打包镜像 docker制作ubuntu镜像_ubuntu_04


在这里有可能自带的apt源还是国外的,而且没有vi/vim可编辑软件,所以这里用了echo直接更新源

mv /etc/apt/sources.list /etc/apt/sources.list.bak
echo "deb http://mirrors.aliyun.com/ubuntu/ xenial main restricted universe multiverse" >> /etc/apt/sources.list
echo "deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted universe multiverse" >>/etc/apt/sources.list
echo "deb http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse" >>/etc/apt/sources.list
echo "deb http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted universe multiverse" >>/etc/apt/sources.list

之后进行必要的组件升级安装

apt update

apt install vim	#安装vim

apt install gcc

###pythin必须的基础包
apt-get install zlib1g-dev libbz2-dev libssl-dev libncurses5-dev libsqlite3-dev libreadline-dev tk-dev libgdbm-dev libdb-dev libpcap-dev xz-utils libexpat1-dev

apt-get install liblzma-dev libffi-dev libc6-dev

完成后进入与主机挂载的目录下,可以看见主机目录的文件成功映射到了虚拟机内

ubuntu docker 打包镜像 docker制作ubuntu镜像_python_05


解压tar -zxvf Python-3.7.0.tgz,完成后进入Python-3.7.0目录,后面就需要依次进行编译安装了,这步可能时间会有点长

#以下命令分开执行
./configure --with-ssl --prefix=/usr/local/python3 --enable-optimizations

make

make install

之后进行链接,依次输入一下命令

ln -s /usr/local/python3/bin/python3.7 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3.7 /usr/bin/pip3

到此为止Python就安装完了,验证一下发现很成功

ubuntu docker 打包镜像 docker制作ubuntu镜像_python_06


接下来就进行Paddlepaddle的安装,这里因为安装了pip,因此使用pip安装,输入以下命令

当然也可以用其他方式安装,其他安装方式

python3 -m pip install paddlepaddle -i https://mirror.baidu.com/pypi/simple

安装完成后,验证一下是否成功安装。

先进入python3,然后输入import paddle.fluid,在输入paddle.fluid.install_check.run_check(),如果出现 Your Paddle Fluid is installed successfully!,说明已成功安装。

ubuntu docker 打包镜像 docker制作ubuntu镜像_docker_07

3、制作自己的镜像

退出容器后,我们需要构建自己的镜像,可以看到,我们成功的构建了属于我们自己的容器

#查看所有容器
docker ps -a
#-m后是说明文字 -a是作者 容器id 后面是镜像名字
docker commit -m "add vim&source" -a "author" 1db56d541f2c python:1.0
#完成后输入一下即可看见新的镜像
docker images

ubuntu docker 打包镜像 docker制作ubuntu镜像_ubuntu_08


最后可将容器保存为文件,存放于当前目录下

docker save -o python.tar python3.7:1.0

而从外部装载时则需要输入

docker load -input python.tar