手动制作Docker镜像和镜像管理

场景:

不使用dockerfile的情况下,当N个项目的部署的环境是一致的,那么我们搭建好第一个docker服务时,完全可以复制已有的容器自定义为自己的开发环境镜像。那么我们制作镜像后必然会对镜像版本进行管理,方便团队去使用,这里使用的是阿里云的镜像服务管理。

一、制作镜像

1.新建一个目录用来存放导出的容器快照

mkdir docker_images

2.根据容器ID导出名为test.tar的快照压缩包

 

docker export 容器ID > /docker_images/test.tar

3.根据快照压缩包制作一个镜像名是djangoc 版本为1.0的镜像文件

docker import test.tar djangoc:1.0

4.检查制作的镜像是否成功,如果存在djangoc并且版本是1.0那到这里镜像已经制作完成

docker images

 

二、管理自定义的镜像

1.阿里云创建容器镜像服务-创建镜像仓库

2.自定义镜像上面已经完成,那么这一步就是用下面命令将制作的镜像推到阿里云通过docker images 可以看到每个镜像的image id

docker login --username=lp**** registry.cn-beijing.aliyuncs.com
docker tag [ImageId] registry.cn-beijing.aliyuncs.com/test-django/centos-djangoc:1.0
docker push registry.cn-beijing.aliyuncs.com/test-django/centos-djangoc:1.0

3.登录阿里云镜像仓库可以看到已经有上面上传的镜像,上传成功后 我们可以根据仓库的镜像启动新的容器

4.从阿里云自己的镜像仓库拉取指定的镜像

docker pull registry.cn-beijing.aliyuncs.com/test-django/centos-djangoc:1.0

5.通过docker images可以查看镜像是否被拉取下来,如果拉取成功,那么我们可以根据这个镜像创建一个新的容器

docker run -itd registry.cn-beijing.aliyuncs.com/test-django/centos-djangoc:1.0 /bin/bashc

6.如果本地有不需要的镜像,可以使用下面命令进行强制删除,删除时可以先检查下是否被容器使用

docker image rm -f [image id]

  

posted @ 2021-08-29 19:18  t-小智  阅读(226)  评论(0)    收藏  举报