我觉得docker最大的便利性体现在可以实现镜像共享,方便团队在同一环境下开发。当然docker的强大之处不止于此。
接下来我用一个例子来演示如何进行docker镜像共享,步骤如下(Ubuntu):
准备工作:首先确定已经安装了docker-ce,网上有大量的介绍,也可以参考我的另一篇博客“docker-ce安装”。
1.登录https://hub.docker.com/注册自己的docker hub 账号,创建完成后登录账户。
创建仓库
出现下图表示创建成功
2.从docker library pull一个Ubuntu18.04的镜像,在终端执行下面的命令。
sudo docker pull ubuntu:18.04
可以使用docker images 查看镜像。
3.基于该镜像新建一个容器并启动,通过一个 bash 终端,允许用户进行交互。通过下面的命令实现
sudo docker run -it ubuntu:18.04 bash
可以看到已经进入交互模式。
4.给该容器安装python,通过下面的命令实现。
apt-get update apt-get install python
步骤2,3,4实现了自带Python的Ubuntu18.04镜像。
通过exit退出容器。
5.保存自定义的镜像,通过以下命令实现。
docker commit -m "ubuntu18.04 with Python" -a "fuhang" b19f42d71f6f fuhang/ubuntu:python
可以看到生成了镜像id,可以通过docker images查看该镜像。
可以通过该镜像新建一个容器并启动
sudo docker run -it fuhang/ubuntu:python bash
可以看到已经实现了自定义Ubuntu:python镜像。
6.登录docker hub,使用命令docker login 填入用户名和密码
7.将该镜像上传docker hub,通过下面的命令实现。
sudo docker push fuhang/ubuntu:python
在docker hub中查看
8.下载该镜像运行
因为是在同一台机子上测试,所以已经有了该镜像,所以首先删除该镜像,用下面的命令
docker image rm fuhang/ubuntu:python
接下来再用docker images 查看镜像发现没有fuhang/ubuntu:python镜像了。
9.从docker hub 中下载fuhang/ubuntu:python镜像
docker pull fuhang/ubuntu:python
10.测试该镜像
docker run -it fuhang/ubuntu:python bash
通过上面的步骤我们实现了自定义镜像、上传到docker hub 、下载到本地应用。