机器信息
Centos 7.4
安装docker
yum install docker #启动docker并设置开机自启 systemctl start docker systemctl enable docker
安装docker-compose
#安装pip yum install python-pip #通过pip安装docker-compose pip install docker-compose #检测是否安装成功 docker-compose version
安装harbor
#下载安装文件
cd /usr/local wget https://storage.googleapis.com/harbor-releases/harbor-online-installer-v1.6.1.tgz #解压文件 tar -zxvf harbor-online-installer-v1.6.1.tgz #编辑harbor文件,修改hostname为registry.harbor.com vi /usr/local/harbor/harbor.cfg
#执行安装(会从docker.io拉取harbor镜像)
/usr/local/harbor/install.sh
#docker images如下
[root@harbor harbor]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
docker.io/goharbor/redis-photon v1.6.1 6a67380bb061 7 months ago 210 MB
docker.io/goharbor/registry-photon v2.6.2-v1.6.1 f4cb5e83f0a4 7 months ago 196 MB
docker.io/goharbor/nginx-photon v1.6.1 9ca888fe33b2 7 months ago 132 MB
docker.io/goharbor/harbor-log v1.6.1 9b1ea3f29465 7 months ago 198 MB
docker.io/goharbor/harbor-jobservice v1.6.1 9ca6fd371ca6 7 months ago 192 MB
docker.io/goharbor/harbor-ui v1.6.1 305ee5b8952c 7 months ago 215 MB
docker.io/goharbor/harbor-adminserver v1.6.1 a3e95f74984e 7 months ago 181 MB
docker.io/goharbor/harbor-db v1.6.1 3bea3bff0190 7 months ago 219 MB
#docker ps如下
[root@harbor harbor]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
b561633c4f3f goharbor/nginx-photon:v1.6.1 "nginx -g 'daemon ..." 54 minutes ago Up 54 minutes (healthy) 0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp, 0.0.0.0:4443->4443/tcp nginx
a29f93d5416a goharbor/harbor-jobservice:v1.6.1 "/harbor/start.sh" 54 minutes ago Up 54 minutes harbor-jobservice
f41e79c61350 goharbor/harbor-ui:v1.6.1 "/harbor/start.sh" 54 minutes ago Up 54 minutes (healthy) harbor-ui
7492c4d172fe goharbor/registry-photon:v2.6.2-v1.6.1 "/entrypoint.sh /e..." 54 minutes ago Up 54 minutes (healthy) 5000/tcp registry
aa783a27e2c8 goharbor/redis-photon:v1.6.1 "docker-entrypoint..." 54 minutes ago Up 54 minutes 6379/tcp redis
53d13588b29f goharbor/harbor-db:v1.6.1 "/entrypoint.sh po..." 54 minutes ago Up 54 minutes (healthy) 5432/tcp harbor-db
f919d84aa00b goharbor/harbor-adminserver:v1.6.1 "/harbor/start.sh" 54 minutes ago Up 53 minutes (healthy) harbor-adminserver
8a065fe12c5f goharbor/harbor-log:v1.6.1 "/bin/sh -c /usr/l..." 54 minutes ago Up 54 minutes (healthy) 127.0.0.1:1514->10514/tcp
#如需外网访问,需在实例安全组中开放80端口,可直接通过ip访问
#默认管理账号为admin,密码为Harbor12345,可登陆ui之后修改
配置k8s节点docker仓库为harbor
#在需要连接harbor的节点上操作 #追加对仓库的本地域名解析 echo "47.110.x.x registry.harbor.com" >> /etc/hosts #编辑docker.service文件,追加--insecure-registry vim /usr/lib/systemd/system/docker.service
#重启docker
systemctl daemon-reload
systemctl restart docker
#登陆harbor
docker login registry.harbor.com
#push镜像到harbor时,需要确认xxx项目已经被创建,且login的账号可以操作xxx项目
docker push registry.harbor.com/xxx/zzz:tag
常见问题
1、修改harbor.cfg配置文件
#如果修改了/usr/local/harbor/harbor.cfg文件,需要重新执行install.sh脚本以重新部署harbor才会生效
2、重启harbor容器服务
#进入docker-compose.yaml文件所在目录 cd /usr/local/harbor #重启harbor服务 docker-compose restart
3、push镜像报denied: requested access to the resource is denied
需要确认xxx项目已经被创建,且login的账号可以操作xxx项目
如果xxx项目不存在,先在ui上新建该项目