Linux中使用云仓库上传镜像和私库制作Registry
一、制作讲解
1.1 使用云仓库
在实际应用中,大型企业和组织更倾向于使用云服务商提供的 Docker 仓库,因为它们能够提供高效、可靠的解决方案,并且减少了自行维护带来的挑战。
而对于一些中小企业或者对成本较为敏感的项目,如果团队有足够的技术能力并且对数据控制有较高要求的话,可能会选择自建私有仓库。
值得注意的是,很多情况下,企业会采用混合模式,即同时利用云服务提供商的仓库和自建的私有仓库,以便充分利用两者的优势。
例如,对外公开的服务可以托管在公有云仓库中,而内部敏感的应用则放在自建的私有仓库里。这种策略可以在保证效率的同时也兼顾了安全性和成本控制。
阿里云提供了容器镜像服务(Container Registry),允许用户方便地管理和分发 Docker 镜像。下面将详细介绍如何在阿里云容器镜像服务中进行镜像的上传(推送)与下载(拉取)。
1.2 创建命名空间和镜像仓库
登录 阿里云控制台,进入“容器镜像服务”页面。
创建完后会出现下面的图片:
将镜像推送到Registry
-- 查看所有镜像
docker images
再将镜像上传:
-- 上传到云仓库
docker push 【推送的镜像id】
当需要使用已上传的镜像时,可以通过以下命令拉取:
docker pull crpi-mfk2sbs1ashtwxym.cn-hangzhou.personal.cr.aliyuncs.com/t-301/abc:[镜像版本号]
二、私库制作
设置私有仓库
使用 Docker Registry 来搭建私有仓库:
docker run -d -p 5000:5000 --restart=always --name my-registry registry
标记镜像并上传至私有仓库
给镜像打标签以便推送到指定仓库:
docker tag 【镜像name】 【主机ip】:5000/【name】:【版本号】
5000可改,取决于上面暴露的端口号
将镜像推送到私有仓库:
docker push 【主机ip】:5000/【标签镜像name】:1.0
从私有仓库下载镜像
下载存储在私有仓库中的镜像:
docker pull 【主机ip】:5000/my-custom-image:1.0