docker构建本地镜像、将镜像发布到阿里云以及私有库

1、构建本地镜像

1、执行docker pull ubuntu命令从远程仓库拉取一个镜像,这里以ubuntu为例

在这里插入图片描述

2、执行docker run -it ubuntu /bin/bash命令运行刚拉取的ubuntu镜像

在这里插入图片描述

从远程仓库中拉取的ubuntu是没有vim文本编辑器

在这里插入图片描述

接下来我们安装vim编辑器

执行apt-get update, apt-get -y install vim完成安装

安装完成后,可以看到vim编辑器已经可以使用了。这里再a.txt里添加了there is dockers instance这句话

在这里插入图片描述

3、接下来使用exit命令退出ubuntu容器,使用docker commit提交容器副本使之成为一个新的镜像

docker commit -m=“提交的描述信息” -a=“作者” 刚才运行的ubuntu的容器ID 要创建的目标镜像名字[:版本号]

docker commit -m="add vim command" -a="felix" 66638fb096fe myubuntu:1.0

在这里插入图片描述

ps:如果忘记了刚才启动的ubuntu容器ID,可以使用docker ps -a,查看历史容器启动记录

在这里插入图片描述

4、执行docker images命令查看刚在构建的镜像

在这里插入图片描述

可以看到自己构建的镜像已经创建成功

5、执行docker run -it 镜像ID命令启动容器

在这里插入图片描述

接着验证一下是否已经可以执行vim命令,这里我在a.txt里输入了verification successful

在这里插入图片描述

至此,我们自己构建的本地镜像已经成功。

2、将构建的本地镜像发布到阿里云

1、在容器镜像服务页面创建一个实例,这里创建的个人版。

在这里插入图片描述

2、点击创建的个人实例,先创建命名空间

在这里插入图片描述

接着创建镜像仓库

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

创建完成之后点击刚才创建的仓库,可以看到操作指南

在这里插入图片描述

第三步的脚步即是将本地镜像推送到阿里云的镜像仓库中

在这里插入图片描述

在这里插入图片描述

docker tag命令会将刚才创建的镜像复制一份并命名为registry.cn-shanghai.aliyuncs.com/mhdaliyun/myubuntu,版本为1.0

3、将之前的镜像删除,然后拉取上传到阿里云中的镜像

执行docker pull registry.cn-shanghai.aliyuncs.com/mhdaliyun/myubuntu:1.0 命令拉取

在这里插入图片描述

接着执行docker run -it 镜像ID /bin/bash命令启动容器,测试vim命令,可以发现已经成功

在这里插入图片描述

3、本地镜像发布到私有库

1、下载镜像Docker Registry

docker pull registry

下载完毕后执行docker images命令可以看到registry

在这里插入图片描述

2、运行registry,相当于本地有个私有的docker hub

docker run -d -p 5000:5000 registry -v /mhd/myregistry/:/tmp/registry --privileged=true registry

如果是云服务器记得开放5000端口,/mhd/myregistry/这一部分可以改为自己想要的路径

在这里插入图片描述

3、我们可以使用docker tag命令将从阿里云拉下来的本地镜像(添加了vim功能的)复制一份并且重命名

在这里插入图片描述

4、使用curl验证私有库中有什么镜像

curl -XGET http://自己的IP地址:5000/v2/_catalog

可以看到是空的

在这里插入图片描述

5、将镜像renamed_ubuntu修改为符合私服规范的名字

dcoker tag 镜像ID 本机IP:5000/镜像名:版本号

在这里插入图片描述

6、修改配置文件使之支持http

vim /ect/docker/daemon.json

在这里插入图片描述

需要添加一个“,”和 “insecure-registries”: [“本机IP:5000”]

添加完成后执行systemctl restart docker命令重启docker,重启之后还需执行docker start 容器ID命令重启之前的registry

之前的registry容器ID可以使用docker ps -a命令查看

7、push推送到私有库

docker push 镜像名:版本号

在这里插入图片描述

8、再次使用curl验证私有库中有什么镜像,可以看到镜像已经在私有库中了

在这里插入图片描述

9、pull到本地运行查看是否是自己刚才的镜像,pull之前可以删除之前的镜像

docker pull 本机IP:5000/镜像名:版本号

在这里插入图片描述

拉下来之后使用docker run -it 镜像ID查看是否有vim的功能,因为我们这里使用的是之前的镜像,所以可以看到a.txt中还是之前的内容

在这里插入图片描述

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值