在阿里云创建自己的容器镜像服务以及如何将镜像上传至阿里云,如何从阿里云拉取镜像
本文章记录最简单的如何在阿里云中申请容器镜像服务以及上传拉取镜像。
首先登录自己的阿里云后台:阿里云-计算,为了无法计算的价值 (aliyun.com)
在产品中选择,如图所示:
如果是个人用户可以选择免费试用(特别提醒是个人用户账号才可以):
然后根据阿里云的引导申请购买就可以了,这里就不赘述了,购买成功后进入后台:
点击个人实例进入个人实例的后台,创建命名空间和镜像仓库:
创建命名空间和镜像仓库不在赘述:
在创建的镜像管理中可以查看具体的内网,外网的地址,以及如何去操作登录,上传,拉取等功能;
我这里用的是宝塔系统,宝塔必须是安装了docker服务的,这点必须注意,不然docker命令无法执行,在宝塔的终端,登录到阿里云docker:
当前阿里云中的仓库是空的,没有镜像,我们可以将自己本地的镜像上传到阿里云上去。
执行命令:
docker tag [ImageId] crpi-dvxyhpnsfr1q0jf7.cn-hangzhou.personal.cr.aliyuncs.com/命名空间/仓库名称:[镜像版本号] docker push crpi-dvxyhpnsfr1q0jf7.cn-hangzhou.personal.cr.aliyuncs.com/命名空间/仓库名称:[镜像版本号]
我在宝塔中之前拉取过一个mysql的官方镜像,现在想把它传到阿里云上去,可以这么操作:
先打标签 docker tag mysql:9.0.1 crpi-dvxyhpnsfr1q0jf7.cn-hangzhou.personal.cr.aliyuncs.com/abc/test:v1 然后执行push操作 docker push crpi-dvxyhpnsfr1q0jf7.cn-hangzhou.personal.cr.aliyuncs.com/abc/test:v1
成功后在阿里云后台就会有镜像:
现在我们操作如何在宝塔中将刚刚push上去的镜像拉取到宝塔的docker中:
首先添加一个仓库:
点击添加仓库,填写基础数据:
添加成功后,在本地镜像中点击从仓库中拉取:
然后选择刚刚新建的仓库,下面填写自己的镜像及版本号进行拉取:
拉取成功后,在列表中就会有刚拉取的镜像:
接下来我们可以在容器中创建一个容器,使用我们刚刚拉取的镜像进行部署了,选择号端口号,然后可以在具体的网站的配置中用nginx进行反向代理到这个容器中。
宝塔的docker会把同一url地址同一命名空间的仓库认为是同一个仓库,导致你添加了两个仓库的时候,拉取镜像失败,骚操作是在拉取第一个镜像后,需要去修改一下仓库名称,然后再拉取另一个镜像:
最后,如果配置了两个容器,并且两个容器也是需要相互通信的,那还需要通过服务器终端搭建网桥:
创建网络:docker network create m-net(m-net可以自定义)
添加网络:docker network connect m-net 容器1的名称
添加网络:docker network connect m-net 容器2的名称
把两个容器添加到同一个网络中去
查看网络:docker network ls