Docker——镜像仓库
为什么用镜像仓库
核心的原因是足够方便和不容易出错。
操作流程是这样的:首先在本地docker完成镜像配置和部署等操作,测试无误后将本地镜像推到镜像仓库。需要部署到服务器时,只需要在服务器的docker把对应镜像仓库中的镜像拉下来就可以了,高效且安全。
小型集群规模非常好用!
准备工作
国内可用的镜像仓库有很多,比如阿里云、DaoCloud等,这里演示阿里云的镜像仓库。
首先登陆阿里云账户,搜索“容器镜像服务”,开通后进入界面:
按照指引创建一个镜像仓库,我已经创建了一个docker01的仓库。
点击“管理”进入仓库详情页:
页面上有详细的操作指南,直接走一遍。
登陆仓库
首先需要登录到阿里云的镜像仓库(需要输入仓库密码):
docker login --username=阿里云登陆名 registry.cn-shenzhen.aliyuncs.com
win和linux系统都可以登录。
镜像推送
保持登陆状态,使用以下命令进行推送:
docker tag [ImageId] registry.cn-shenzhen.aliyuncs.com/[仓库命名空间]/[仓库名称]:[镜像版本号]
docker push registry.cn-shenzhen.aliyuncs.com/[仓库命名空间]/[仓库名称]:[镜像版本号]
如图所示,我把自己的core程序推送到了仓库(昨天推送过一次,所以提示已存在)。推送成功后你可以在阿里云看到自己的镜像:
接下来我们切换到CentOS将镜像拉取下来,拉取之前先查看一下本地已有镜像:
然后登陆到仓库:
登陆成功后拉取镜像:
docker pull registry.cn-shenzhen.aliyuncs.com/[仓库命名空间]/[仓库名称]:[镜像版本号]
镜像拉取完毕以后,再次查看本地镜像:
这个镜像是我之前打包好的net core程序,在这个镜像内run一个容器进行测试:
容器跑起来了,接下来通过浏览器访问一下: