为什么选择Harbor
你可能会问既然我们已经有了 Docker 镜像仓库为什么还需要 Harbor 呢?嗯,Harbor 是 Docker 镜像仓库的企业级扩展,用途更广泛。这些新的企业级功能包括:
- 管理用户界面
- 基于角色的访问控制
- AD/LDAP 集成
- 审计日志记录
首先检查你的机器上是否有docker compose
# 命令一
[root@docker harbor]# docker-compose
-bash: docker-compose: command not found
# 命令二
[root@docker harbor]# docker compose version
Docker Compose version v2.21.0
只要有一个能用就行,如果俩都不能执行的话,安装过程
- 下载软件
软件下载地址 https://github.com/docker/compose/releases/download/v2.23.3/docker-compose-linux-x86_64- 将软件赋予可执行权限
[root@docker ~]# chmod +x docker-compose-linux-x86_64- 将软件移动到环境变量目录下
[root@docker ~]# mv docker-compose-linux-x86_64 /usr/local/bin/docker-compose- 现在你就可以执行docker-compose了
[root@docker ~]# docker-compose -v
Docker Compose version v2.23.3
搭建Harbor
Harbor官方提供了在线安装和离线安装2种方式,由于国内网络环境的原因,我们最好采取离线安装的方式
- 在github上下载Harbor离线包
地址 https://github.com/goharbor/harbor/releases/download/v2.10.0/harbor-offline-installer-v2.10.0.tgz
-
将下载好的Harbor安装包上传到Linux
上传有很多种方式,建议直接使用xftp可视化上传 -
将上传好的tar包解压
[root@docker docker]# tar -zxvf harbor-offline-installer-v2.10.0.tgz harbor/harbor.v2.10.0.tar.gz harbor/prepare harbor/LICENSE harbor/install.sh harbor/common.sh harbor/harbor.yml.tmpl [root@docker docker]# [root@docker docker]# [root@docker docker]# ls Dockerfile harbor harbor-offline-installer-v2.10.0.tgz httpd index.html mysql ssh user volume [root@docker docker]#
-
进入解压好的harbor目录,更改配置
[root@docker docker]# cd harbor/ [root@docker harbor]# cp harbor.yml.tmpl harbor.yml
将harbor.yml里面你想要修改的内容进行修改,建议修改一下端口
如果有ssl证书的话将里面的ssl证书地址改成你自己的,如果没有的话直接将https段落注释掉
-
修改docker的单元文件
[root@docker harbor]# vim /usr/lib/systemd/system/docker.service [root@docker harbor]# systemctl daemon-reload [root@docker harbor]# systemctl restart docker
6 . 开始安装harbor
[root@docker harbor]# ./install.sh
等他安装完成之后咱们就可以通过浏览器进入UI界面了,用户名是admin,密码是Harbor12345,这个密码也是在harbor.yml里面写好的,可以查得到,如果想修改就在安装之前修改好
-
docker login到harbor仓库
[root@docker harbor]# docker login 192.168.200.200:5000 Username: admin Password: WARNING! Your password will be stored unencrypted in /root/.docker/config.json. Configure a credential helper to remove this warning. See https://docs.docker.com/engine/reference/commandline/login/#credentials-store
Login Succeeded [root@docker harbor]#
harbor的搭建就搞定了,然后就可以根据自己的需要去harbor仓库里面上传或者下载镜像了
8. 上传镜像到harbor仓库
首先创建一个项目,在harbor的首页可以点击新建项目,公不公开都行,看你需求
然后进入刚刚创建好的项目,在右侧会有一个推送命令
然后复制他
# 对镜像进行标记
[root@docker harbor]# docker tag centos:ssh 192.168.200.200:5000/test/centos:ssh
[root@docker harbor]# docker push 192.168.200.200:5000/test/centos:ssh
The push refers to repository [192.168.200.200:5000/test/centos]
4524c494f95b: Pushed
3f19fd485f7e: Pushed
a31c404b4c02: Pushed
613be09ab3c0: Pushed
ssh: digest: sha256:d9db914208f66c20b4ba65606e7222816a3416e71a984110a589ca9e6e94dffd size: 1156
- 进入harbor仓库查看是否存在
本文来自极简博客,作者:时光旅者,转载请注明原文链接:Harbor私有镜像仓库搭建