创建镜像,是在有基础镜像的前提下,开发者需要定义属于自己的独特的开发环境,比如在centos7上安装python3的完整环境,然后形成一个centos7+python3的镜像,这样,在下次使用,就不用再次下载centos7的镜像然后使用容器安装python3。
1、下载纯净的centos镜像,并且定义容器,启动
docker run -dit --name centos_base 镜像id(9f38484d220f) /bin/bash
2、在容器当中安装自己的python3环境
进入创建的容器
docker exec -it 容器id /bin/bash
下载依赖包
yum install zlib-devel openssl nucuses-devel sqlite readline-devel tk-decel gcc make -y
下载python3的包
注意这里如果没有wget需要先现在wget
yum install wget
进入opt目录执行以下代码
wget https://www.python.org/ftp/python/3.5.2/Python-3.5.2.tar.xz
解压安装python3
tar -Jxvf Python-3.5.2.tar.xz
配置安装路径
先切换到解压出来的python3.5.2目录下,然后输入以下命令
./configure prefix=/usr/local/python3
编译安装
同样是在python3.5.2目录下输入以下命令
make && make install
配置软连接
同样还是在python3.5.2目录下输入以下两个命令
ln -s /usr/local/python3/bin/python3 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3
3、将容器打包成镜像
docker commit -m 描述 -a作者信息 用来创建镜像的容器id
docker commit -m "wwl container about centos7_python3.5.2" -a "wwl" wwl/python3
4、使用自己的镜像
使用自己的镜像创建容器
docker run -dit --name=haha 镜像id /bin/bash
注意,当前镜像提交的位置是本地
5提交到docker hub
1)登陆docker hub
docker login
2)push 提交镜像
修改本地docker镜像的repository名称
docker tag 要提交的镜像repository名称 docker账户/名称
注意修改后的格式一定不能错
docker push 修改后的要提交的镜像repository名字
3)pull 拉取镜像
docker pull 修改后的要提交的镜像repository名字