days(2019-10-10)
前面文章介绍了harbor的部署,今天第一次学习入门使用。
服务器安装docker以后,我们怎么吧镜像push到我们的私有仓库,和怎么吧镜像pull到本地,首先在服务器上装备docker环境
连接harbor
1 | # docker login reg.xxlaila.cn |
这里第一次连接报错,Docker自从1.3.X之后docker registry交互默认使用的是HTTPS,但是我们搭建私有镜像默认使用的是HTTP服务,所以与私有镜像交时出现以上错误。
解决问题
方法一: 修改或添加配置
1
2
3
4# cat /etc/docker/daemon.json
{
"insecure-registries" : ["reg.xxlaila.cn"]
}重新启动docker,并重新登录
1
2
3
4
5
6# systemctl restart docker
# docker login reg.xxlaila.cn
Username: admin
Password:
Login Succeeded方法二:修改启动文件
1
2
3
4
5# vim /usr/lib/systemd/system/docker.service
ExecStart=/usr/bin/dockerd --insecure-registry reg.xxlaila.cn $DOCKER_NETWORK_OPTIONS
# systemctl daemon-reload
# systemctl restart docker
Harbor上创建新项目供上传使用
Docker服务器给镜像打标签
1 | # docker images |
上传镜像
1 | # docker push reg.xxlaila.cn/kxl/kxl-eureka:v2 |
下载镜像
删除本地镜像
1
2
3# docker rmi reg.xxlaila.cn/kxl/kxl-eureka:v2
# docker rmi docker.io/xxlaila/kxl-eureka:v2下载harbor上的镜像
1
2
3
4
5
6
7
8
9
10
11# docker pull reg.xxlaila.cn/kxl/kxl-eureka:v2
Trying to pull repository reg.xxlaila.cn/kxl/kxl-eureka ...
v2: Pulling from reg.xxlaila.cn/kxl/kxl-eureka
a02a4930cb5d: Pull complete
6ea3dcbee0db: Extracting [==================================================>] 81.4 MB/81.4 MB
6ea3dcbee0db: Pull complete
c423a7a79cc1: Pull complete
7418081934c1: Pull complete
f89b73853622: Pull complete
Digest: sha256:20d3bc74fdcb2fc4cdfc9066f742c828898c728f7e3f2114498ebe2848b71653
Status: Downloaded newer image for reg.xxlaila.cn/kxl/kxl-eureka:v2
days(2019-10-12)
由于公司需求,开发人员比较多,又不想研发用一个账号,也不想给研发一个个的开账号,位置harbor支持了ldap。有了这么一个东西,我们就能很好的为研发创建账号支持研发随时查看docker的镜像。
配置harbor ldap
新版本的harbor很多东西都可以直接在界面配置,不需要去修改文件,省去了大量的工作,web界面配置更加方便快捷,登录harbor平台,点击配置管理——>修改认证模式,认证模式支持很多类型,这里选择ldap。
注: 在密码这栏填写需要填写管理员的密码,普通用户的密码是不行的,即使是在管理员的用户也是不行的。
点击测试ldap,提示连接成功后保存
配置邮箱
在配置ldap页面旁边有一个邮箱配置,邮件服务器用于向请求重设密码的用户发送响应。
点击测试,测试没问题之后点击保存。
测试ladp连接
新打开一个一个浏览器窗口,利用ladp账户进行登录。
注释: 新版本的在登录界面没有什么选择ldap登录,直接使用ldap账号登录就ok
将项目角色分配给LDAP / AD组
修改之前的ldap配置,增加组的配置
在项目->成员-> +组中。
设置ldap账户的权限
当ldap配置以后,ldap账户登录没有管理员权限,我们管理harbor还的使用harbor
的admin账户登录,这样无疑对运维人员维护带来了不便利。当ldap用户登录,harbor就会记录该用户,我们设置运维用户为超级管理员,这样就实现了一个账号登录,维护的时候也不用账号切换