1、安装harbor的前提
1、要安装好了docker和docker-compose
2、下载harbor的源码
3、上传到linux服务器
2、安装harbor
解压文件:
[root@docker_harbor harbor]# ls
harbor-offline-installer-v2.8.2.tgz
[root@docker_harbor harbor]# tar xf harbor-offline-installer-v2.8.2.tgz
[root@docker_harbor harbor]# ls
harbor harbor-offline-installer-v2.8.2.tgz
[root@docker_harbor harbor]# cd harbor
[root@docker_harbor harbor]# ls
common.sh harbor.v2.8.2.tar.gz harbor.yml.tmpl install.sh LICENSE prepare
[root@docker_harbor harbor]# ll
总用量 596680
-rw-r--r--. 1 root root 3639 6月 2 19:43 common.sh
-rw-r--r--. 1 root root 610962984 6月 2 19:44 harbor.v2.8.2.tar.gz
-rw-r--r--. 1 root root 11736 6月 2 19:43 harbor.yml.tmpl
-rwxr-xr-x. 1 root root 2725 6月 2 19:43 install.sh
-rw-r--r--. 1 root root 11347 6月 2 19:43 LICENSE
-rwxr-xr-x. 1 root root 1881 6月 2 19:43 prepare
配置yml文件:
[root@docker_harbor harbor]# cp harbor.yml.tmpl harbor.yml
[root@docker_harbor harbor]# ls
common.sh harbor.v2.8.2.tar.gz harbor.yml harbor.yml.tmpl install.sh LICENSE prepare
[root@docker_harbor harbor]# vim harbor.yml
hostname: 192.168.2.167
http:
port: 8089
注释掉https相关配置,其余不变。
执行脚本:
[root@docker_harbor harbor]# ./install.sh
[Step 0]: checking if docker is installed ...
Note: docker version: 24.0.2
[Step 1]: checking docker-compose is installed ...
Note: Docker Compose version v2.7.0
[Step 2]: loading Harbor images ...
3、使用harbor
访问主机地址,8089端口
用户名:admin
密码:Harbor12345
1、成功后创建一个项目和一个用户
2、在另一台docker中使用这个仓库
编辑daemon.json文件,并重启服务与docker
[root@docker_server ~]# vim /etc/docker/daemon.json
[root@docker_server ~]# cat /etc/docker/daemon.json
{
"registry-mirrors": ["https://registry.docker-cn.com"],
"insecure-registries": ["192.168.2.167:8090"]
}
[root@docker_server ~]# systemctl daemon-reload
[root@docker_server ~]# systemctl restart docker
修改镜像名字
[root@docker_server ~]# docker tag nginx:latest 192.168.2.167:8089/harbor_2/nginx:1.233
3、登录库上传镜像
[root@docker_server ~]# docker login 192.168.2.167:8089
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_server ~]# docker push 192.168.2.167:8089/harbor_2/nginx:1.233
The push refers to repository [192.168.2.167:8089/harbor_2/nginx]
4fd834341303: Pushed
5e099cf3f3c8: Pushed
7daac92f43be: Pushed
e60266289ce4: Pushed
4b8862fe7056: Pushed
8cbe4b54fa88: Pushed
1.233: digest: sha256:6b06964cdbbc517102ce5e0cef95152f3c6a7ef703e4057cb574539de91f72e6 size: 1571