Docker使用阿里云镜像仓库
这里用阿里云的镜像仓库
使用前准备
登录阿里云找到容器镜像服务,先创建一个命名空间然后就可以创建镜像仓库
得到仓库地址后可以开始使用
上传镜像
1.使用命令先登录
docker login --username=阿里云用户名 registry.cn-hangzhou.aliyuncs.com
输入密码后显示Login Succeeded说明登录成功
2.按照阿里云要求给镜像打包一个TAG
docker images查询结果如下
REPOSITORY TAG IMAGE ID CREATED SIZE
nginx test f7203f2a8a0d 1 minutes ago 576MB
使用命令打TAG
docker tag nginx registry.cn-hangzhou.aliyuncs.com/test1222/nginx:v1
命令解释
docker tag 镜像名 registry.cn-hangzhou.aliyuncs.com/命名空间/仓库名:[镜像版本号]
docker images查询结果如下
REPOSITORY TAG IMAGE ID CREATED SIZE
nginx test f7203f2a8a0d 3 minutes ago 576MB
registry.cn-hangzhou.aliyuncs.com/test1222/nginx:v1 v1 f7203f2a8a0d 1 minutes ago 576MB
上传镜像
docker push registry.cn-hangzhou.aliyuncs.com/test1222/nginx:v1
拉取镜像
如果是公开的仓库就不用登陆,否则需要先登录
使用命令即可拉取镜像
docker pull registry.cn-hangzhou.aliyuncs.com/test1222/nginx:v1
Harbor介绍和使用
Harbor简介
Harbor 是一个用于存储和分发 Docker 镜像的企业级 Registry 服务器,由vmware 开源,其通过添加一些企业必需的功能特性,例如安全、标识和管理等,扩展了开源 Docker Distribution。作为一个企业级私有 Registry 服务器,Harbor 提供了更好的性能和安全。提升用户使用 Registry 构建和运行环境传输镜像的效率。
Harbor 支持安装在多个 Registry 节点的镜像资源复制,镜像全部保存在私有 Registry 中, 确保数据和知识产权在公司内部网络中管控,另外,Harbor 也提供了高级的安全特性,诸如用户管理,访问控制和活动审计等
官网地址:https://vmware.github.io/harbor/cn/
官方github地址:https://github.com/vmware/harbor
Harbor安装使用
下载地址:https://github.com/vmware/harbor/releases
安装文档:
https://github.com/vmware/harbor/blob/master/docs/installation_guide.md
推荐下载离线安装包,否则安装过程中需要从网络拉取基础镜像速度会很慢
Harbor安装需要依赖docker-compose和docker,需要先装上。
docker-compose需要先安装epel
这里使用1.7.5版本
1.解压后修改配置文件harbor.cfg
修改访问地址,可以用域名也可以IP,这里测试直接用IP
hostname = 192.168.1.10
设置登录密码,账号是admin
harbor_admin_password = 123456
2.运行自带的安装脚本
./install.sh
3.访问web管理界面,账户是admin密码是刚才设置的
4.在管理界面新建项目nginx
5.给镜像打上TAG
docker tag nginx:test 192.168.1.10/nginx/nginx-test:v1
docker tag 镜像名 仓库访问地址/项目名/镜像名:版本号
6.在docker启动脚本增加启动参数否则无法上传
在docker.service中添加启动参数
ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock --insecure-registry 192.168.1.10
可添加多个仓库地址,但是一个选项只能跟一个地址,要加第二个需要加2次
ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock --insecure-registry 192.168.1.10 --insecure-registry 192.168.1.11
7.重启docker服务后就可以登陆上传
docker login 192.168.1.10
上传镜像
docker push 192.168.1.10/nginx/nginx-test:v1
Harbor自动同步镜像
1.先在仓库管理中添加目标
目标名随便起,自己记得就行
URL是同步的访问地址
用户名密码是对方的登录用户名密码,没有证书不要选验证远程证书。
填写完后记得按测试连接看是否成功
2.在复制管理中新建规则
名称随便填
源项目填需要同步的项目名称
目标选刚才创建的目标
创建好了就等他自己同步就行了,触发模式可以按需求自己改