1. 下载离线的 harbor gz包

wget https://github.com/vmware/harbor/releases/download/v1.2.0/harbor-offline-installer-v1.2.0.tgz -O harbor-offline-installer-v1.2.0.tgz

2. 安装docker-compose

(1). 使用pip安装

使用 epel.repo 源

yum install python-pip 
pip install --upgrade pip

pip install docker-compose

(2). 使用 yum直接安装

yum install -y docker-compose

由于docker-compose 版本过高引起的,所有卸载,安装 1.7.1版本

卸载
[root@iZrj9ftygu3aq014t90o08Z harbor]# pip uninstall docker-compose [root@iZrj9ftygu3aq014t90o08Z harbor]# pip install docker-compose==1.7.

3. 解压进入到harbor 文件夹修改 hostname,其他配置可以不动

修改主机名

禁止harbor注册

4. 执行:  ./install

5. 访问

6. 维护操作

比如使用https,那么

关闭  docker-compose  down -v

修改 harbor配置文件,

运行 ./prepare

启动 : docker-compose up -d

######################################################################################################

harbor 配置https 登录,避免使用 在docker 配置文件中再次添加 -insecure-registry 参数

1. 生成证书

localdomain=docker.senyint.com

openssl req -nodes -subj "/C=CN/ST=BeiJing/L=ChaoYang/CN=$localdomain" -newkey rsa: -keyout $localdomain.key -out $localdomain.csr 

openssl x509 -req -days  -in $localdomain.csr -signkey $localdomain.key -out $localdomain.crt 

openssl x509 -req -in $localdomain.csr -CA $localdomain.crt -CAkey $localdomain.key -CAcreateserial -out $localdomain.crt -days 

2. harbor服务器进行操作  docker cert.d 目录建立 登录域名的文件夹,并且把ca拷贝到目录中

mkdir /etc/docker/certs.d/docker.senyint.com/
cp /data/cert/docker.senyint.com.crt /etc/docker/certs.d/docker.senyint.com/ca.crt

3.修改配置文件, 把http 修改成 https

hostname = docker.senyint.com

ui_url_protocol = https

db_password = root123

max_job_workers =  

customize_crt = off

ssl_cert = /data/cert/docker.senyint.com.crt
ssl_cert_key = /data/cert/docker.senyint.com.key secretkey_path = /data admiral_url = NA clair_db_password = password email_identity = email_server = smtp.mydomain.com
email_server_port =
email_username = sample_admin@mydomain.com
email_password = abc
email_from = admin <sample_admin@mydomain.com>
email_ssl = false harbor_admin_password = admin auth_mode = db_auth ldap_url = ldaps://ldap.mydomain.com ldap_basedn = ou=people,dc=mydomain,dc=com ldap_uid = uid ldap_scope = ldap_timeout = self_registration = on token_expiration = project_creation_restriction = everyone verify_remote_cert = on

[root@harbor harbor]# cd /data/harbor

[root@harbor harbor]# ./install

[root@harbor harbor]# docker login docker.senyint.com
Username: admin
Password:
Login Succeeded

查看保存的登录认证信息

[root@harbor docker.senyint.com]# cat /root/.docker/config.json
{
"auths": {
"docker.senyint.com": {
"auth": "YWRtaW46YWRtaW4="
}
}
}

测试上传镜像,先打tag , 注意一定要登录https://docker.senyint.com 建立项目名称

[root@harbor harbor]# docker tag photon:1.0 docker.senyint.com/senyint/photon:1.0
[root@harbor harbor]# docker pull docker.senyint.com/senyint/photon:1.0

docker服务器进行操作
1. docker cert.d 目录建立 登录域名的文件夹,并且把ca拷贝到目录中

[root@openfalcon_mysql docker.senyint.com]# mkdir /etc/docker/certs.d/docker.senyint.com/ 
[root@openfalcon_mysql docker.senyint.com]# scp docker.senyint.com:/etc/docker/certs.d/docker.senyint.com/ca.crt /etc/docker/certs.d/docker.senyint.com/ca.crt

2.登录一下docker.senyint.com 服务器,把认证信息保存在/root/.docker/config.json

[root@openfalcon_mysql docker.senyint.com]# docker login docker.senyint.com
Username: admin
Password:
Login Succeeded

3. 测试拉取镜像

[root@openfalcon_mysql docker.senyint.com]# docker pull docker.senyint.com/senyint/busybox
Using default tag: latest
Trying to pull repository docker.senyint.com/senyint/busybox ...
latest: Pulling from docker.senyint.com/senyint/busybox
fb46b04c527d: Pull complete
Digest: sha256:cb845cc8a7838ec7a4bcc3ace4084318773798c1bb8fe11b34b06204d8be9a9b

harbor 镜像删除与空间回收

1. 在管理页面裸机上删除镜像

2. 关闭harbor所有容器

docker-compose  stop

3. 查看registry 镜像

[root@ceonts-ceph- harbor]# docker images vmware/registry
REPOSITORY TAG IMAGE ID CREATED SIZE
vmware/registry 2.6.-photon c38af846a0da months ago 240MB

4. 查看要删除的镜像, /etc/registry/config.yml  没有这个文件

docker run -it --name gc --rm --volumes-from registry vmware/registry:2.6.-photon garbage-collect --dry-run /etc/registry/config.yml

5. 删除镜像

docker run -it --name gc --rm --volumes-from registry vmware/registry:2.6.-photon garbage-collect  /etc/registry/config.yml

6. 查看/data/registry大小

7. 启动镜像

docker-compose  start

私有仓库harbor安装包括https的更多相关文章

  1. Kubernetes-5:搭建企业级私有仓库Harbor

    搭建企业级私有仓库Harbor 安装需求 python版本 >= 2.7 Docker引擎版本 >= 1.10 docker-compose版本 >= 1.6.0 安装环境 一.Py ...

  2. Kubernets二进制安装(5)之私有仓库harbor搭建

    在IP地址为192.168.80.50,机器名为mfyxw50上搭建私有仓库harbor harbor下载地址: harbor下载连接地址:https://github.com/goharbor/ha ...

  3. 菜鸟系列docker——搭建私有仓库harbor(6)

    docker 搭建私有仓库harbor 1. 准备条件 安装docker sudo yum update sudo yum install -y yum-utils device-mapper-per ...

  4. Docker 私有仓库 Harbor registry 安全认证搭建 [Https]

    Harbor源码地址:https://github.com/vmware/harborHarbort特性:基于角色控制用户和仓库都是基于项目进行组织的, 而用户基于项目可以拥有不同的权限.基于镜像的复 ...

  5. 搭建私有仓库Harbor

    搭建Harbor企业级docker仓库   搭建Harbor企业级docker仓库 一.Harbor简介 1.Harbor介绍 Harbor是一个用于存储和分发Docker镜像的企业级Registry ...

  6. docker 私有仓库 harbor docker-compose

    c创建docker私有仓库 docker pull registry:2.1.1 mkdir /opt/registry#mkdir /var/lib/registry docker run -d - ...

  7. 物联网架构成长之路(44)-Docker私有仓库Harbor

    0. 前言 安装docker.docker-compose,这些在我以前的博客讲过,这里就不继续说明了,有需要的可以参考我之前的博客. https://www.cnblogs.com/wunaozai ...

  8. 企业级Docker私有仓库Harbor

    一.Harbor简介 1.Harbor介绍 Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器,通过添加一些企业必需的功能特性,例如安全.标识和管理等,扩展了开源Docke ...

  9. 微服务探索之路03篇-docker私有仓库Harbor搭建+Kubernetes(k8s)部署私有仓库的镜像

    ❝ 目录: 微服务探索之路01篇.net6.0项目本地win10系统docker到服务器liunx系统docker的贯通 微服务探索之路02篇liunx ubuntu服务器部署k8s(kubernet ...

随机推荐

  1. 【转】java线程池

    一简介线程的使用在java中占有极其重要的地位,在jdk1.4极其之前的jdk版本中,关于线程池的使用是极其简陋的.在jdk1.5之后这一情况有了很大的改观.Jdk1.5之后加入了java.util. ...

  2. java网络编程(UDP详解)

    UDP详解 一,TCP/IP协议栈中,TCP协议和UDP协议的联系和区别? 联系: TCP和UDP是TCP/IP协议栈中传输层的两个协议,它们使用网络层功能把数据包发送到目的地,从而为应用层提供网络服 ...

  3. 一文告诉你git如何使用

    提供简易教程学习网址 http://www.bootcss.com/p/git-guide/ git add . //提交至缓存 git commit -m '注释' //提交至本地 (git com ...

  4. FIO测试磁盘的iops

    FIO是测试IOPS的非常好的工具,用来对硬件进行压力测试和验证,支持13种不同的I/O引擎,包括:sync,mmap, libaio, posixaio, SG v3, splice, null, ...

  5. php5.5过渡--mysql连接

    以前: // $conn=mysql_connect("localhost","root","");// $db=mysql_select_ ...

  6. Java基础学习—思维导图

    找到两张Java学习的思维导图,特别适合我这样的菜鸟学习,贴过来和小伙伴分享.

  7. 怎么配置eclipse的联想功能

    第一步:打开Eclipse,windows下,打开“window”→“Preferences” :mac下,打开“偏好设置”. 第二步:选择“Java”,展开,“Editor”,选择“Content ...

  8. Android如何使用WebView访问https的网站

    Android中可以用WebView来访问http和https的网站,但是默认访问https网站时,假如证书不被Android承认,会出现空白页面,且不会有任何提示信息,这时我们必须加多一些配置. 此 ...

  9. String 类型

    一.不可变 一个 String 类型的值是不可以改变的,比如,String china = "中国",“中国”这个字符串从它创建开始直到销毁都是不可改变的. 二.字符串常量池 字面 ...

  10. 指令-Directive

    restrict:'A'用作设定用那种方式使用指令. 可组合使用如restrict:'AE' E - 元素名称: <my-directive></my-directive> A ...