精华内容
下载资源
问答
  • Harbor仓库搭建及简单使用

    万次阅读 多人点赞 2019-06-03 14:57:12
    Docker容器应用的开发和运行离不开可靠的镜像管理,虽然Docker官方也提供了公共的镜像仓库,但是从安全和效率等方面考虑,部署私有环境内的Registry也是非常必要的。Harbor是由VMware公司开源的企业级的Docker ...

    一、Harbor介绍

    Docker容器应用的开发和运行离不开可靠的镜像管理,虽然Docker官方也提供了公共的镜像仓库,但是从安全和效率等方面考虑,部署私有环境内的Registry也是非常必要的。Harbor是由VMware公司开源的企业级的Docker Registry管理项目,它包括权限管理(RBAC)、LDAP、日志审核、管理界面、自我注册、镜像复制和中文支持等功能

    二、环境准备

    Harbor的所有服务组件都是在Docker中部署的,所以官方安装使用Docker-compose快速部署,所以需要安装Docker、Docker-compose。由于Harbor是基于Docker Registry V2版本,所以就要求Docker版本不小于1.10.0,Docker-compose版本不小于1.6.0

    1)、安装并启动Docker

    安装所需的包。yum-utils提供了yum-config-manager 效用,并device-mapper-persistent-data和lvm2由需要 devicemapper存储驱动程序

    [root@localhost ~]# yum install -y yum-utils device-mapper-persistent-data lvm2
    

    设置稳定存储库

    [root@localhost ~]# yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
    

    安装Docker CE

    [root@localhost ~]# yum install -y docker-ce docker-ce-cli containerd.io
    

    2)、安装Docker-compose

    下载指定版本的docker-compose

    [root@localhost ~]# curl -L https://github.com/docker/compose/releases/download/1.13.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
    

    对二进制文件赋可执行权限

    [root@localhost ~]# chmod +x /usr/local/bin/docker-compose
    

    测试下docker-compose是否安装成功

    [root@localhost ~]# docker-compose --version
    docker-compose version 1.13.0, build 1719ceb
    

    三、Harbor服务搭建及启动

    1)、下载Harbor安装文件

    从GitHub上https://github.com/goharbor/harbor/releases下载指定版本的安装包

    [root@localhost ~]# mkdir -p /harbor
    [root@localhost ~]# cd /harbor/
    [root@localhost harbor]# yum -y install wget
    [root@localhost harbor]# wget https://github.com/vmware/harbor/releases/download/v1.1.2/harbor-online-installer-v1.1.2.tgz
    [root@localhost harbor]# ls
    harbor-online-installer-v1.1.2.tgz
    [root@localhost harbor]# tar -zxf harbor-online-installer-v1.1.2.tgz 
    

    2)、配置Harbor

    [root@localhost harbor]# ls
    harbor  harbor-online-installer-v1.1.2.tgz
    [root@localhost harbor]# cd harbor
    [root@localhost harbor]# ls
    common  docker-compose.notary.yml  docker-compose.yml  harbor_1_1_0_template  harbor.cfg  install.sh  LICENSE  NOTICE  prepare  upgrade
    [root@localhost harbor]# vi harbor.cfg 
    

    配置文件harbor.cfg详解:

    # hostname设置访问地址,可以使用ip、域名,不可以设置为127.0.0.1或localhost
    hostname = 192.168.126.162
    
    # 访问协议,默认是http,也可以设置https,如果设置https,则nginx ssl需要设置on
    ui_url_protocol = http
    
    # mysql数据库root用户默认密码root123,实际使用时修改下
    db_password = 123456
    
    max_job_workers = 3 
    
    customize_crt = on
    
    ssl_cert = /data/cert/server.crt
    ssl_cert_key = /data/cert/server.key
    
    secretkey_path = /data
    
    admiral_url = NA
    # 邮件设置,发送重置密码邮件时使用
    email_identity = 
    
    email_server = smtp.mydomain.com
    email_server_port = 25
    email_username = sample_admin@mydomain.com
    email_password = abc
    email_from = admin <sample_admin@mydomain.com>
    email_ssl = false
    
    # 启动Harbor后,管理员UI登录的密码,默认是Harbor12345
    harbor_admin_password = 123456
    
    # 认证方式,这里支持多种认证方式,如LADP、本次存储、数据库认证。默认是db_auth,mysql数据库认证
    auth_mode = db_auth
    
    # LDAP认证时配置项
    ldap_url = ldaps://ldap.mydomain.com
    #ldap_searchdn = uid=searchuser,ou=people,dc=mydomain,dc=com
    #ldap_search_pwd = password
    ldap_basedn = ou=people,dc=mydomain,dc=com
    #ldap_filter = (objectClass=person)
    ldap_uid = uid
    ldap_scope = 3
    ldap_timeout = 5
    
    # 是否开启自注册
    self_registration = on
    
    # token有效时间,默认30分钟
    token_expiration = 30
    
    # 用户创建项目权限控制,默认是everyone(所有人),也可以设置为adminonly(只能管理员)
    project_creation_restriction = everyone
    
    verify_remote_cert = on
    

    3)、启动Harbor

    修改完配置文件后,在的当前目录执行./install.sh,Harbor服务就会根据当期目录下的docker-compose.yml开始下载依赖的镜像,检测并按照顺序依次启动各个服务

    [root@localhost harbor]# ./install.sh 
    

    Harbor依赖的镜像及启动服务如下:

    [root@localhost harbor]# docker-compose ps
           Name                     Command               State                                Ports                               
    ------------------------------------------------------------------------------------------------------------------------------
    harbor-adminserver   /harbor/harbor_adminserver       Up                                                                       
    harbor-db            docker-entrypoint.sh mysqld      Up      3306/tcp                                                         
    harbor-jobservice    /harbor/harbor_jobservice        Up                                                                       
    harbor-log           /bin/sh -c crond && rm -f  ...   Up      127.0.0.1:1514->514/tcp                                          
    harbor-ui            /harbor/harbor_ui                Up                                                                       
    nginx                nginx -g daemon off;             Up      0.0.0.0:443->443/tcp, 0.0.0.0:4443->4443/tcp, 0.0.0.0:80->80/tcp 
    registry             /entrypoint.sh serve /etc/ ...   Up      5000/tcp    
    

    启动完成后,访问刚设置的hostname即可,默认是80端口,如果端口占用,可以去修改docker-compose.yml文件中,对应服务的端口映射

    四、Harbor仓库使用

    1)、登录Web Harbor
    在这里插入图片描述
    使用admin用户登录,密码为harbor.cfg配置的密码
    在这里插入图片描述
    2)、上传镜像到Harbor仓库

    我们新建一个名称为harbor的项目,设置不公开。当项目设为公开后,任何人都有此项目下镜像的读权限。命令行用户不需要docker login就可以拉取此项目下的镜像。
    在这里插入图片描述
    新建项目后,使用admin用户提交本地nginx镜像到Harbor仓库

    1)admin登录

    使用docker login出现如下问题:

    [root@localhost ~]# docker login 192.168.126.162
    Username: admin
    Password: 
    Error response from daemon: Get https://192.168.126.162/v2/: read tcp 192.168.126.162:49654->192.168.126.162:443: read: connection reset by
     peer
    

    解决方法:

    查找docker.service所在的位置

    [root@localhost ~]# find / -name docker.service -type f
    /usr/lib/systemd/system/docker.service
    

    修改配置文件,ExecStart之后添加–insecure-registry=http://192.168.126.162

    重启Docker服务

    再次进行登录

    [root@localhost ~]# docker login 192.168.126.162
    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
    

    2)给镜像打tag

    [root@localhost ~]# docker images
    REPOSITORY                  TAG                 IMAGE ID            CREATED             SIZE
    vmware/harbor-jobservice    v1.1.2              4ef0a7a33734        24 months ago       163MB
    vmware/harbor-ui            v1.1.2              4ee8f190f366        24 months ago       183MB
    vmware/harbor-adminserver   v1.1.2              cdcf1bed7eb4        24 months ago       142MB
    vmware/harbor-db            v1.1.2              fcb8aa7a0640        24 months ago       329MB
    vmware/registry             2.6.1-photon        0f6c96580032        2 years ago         150MB
    vmware/nginx                1.11.5-patched      8ddadb143133        2 years ago         199MB
    vmware/harbor-log           v1.1.2              9c46a7b5e517        2 years ago         192MB
    [root@localhost ~]# docker tag vmware/nginx:1.11.5-patched 192.168.126.162/harbor/nginx:latest
    [root@localhost ~]# docker images
    REPOSITORY                     TAG                 IMAGE ID            CREATED             SIZE
    vmware/harbor-jobservice       v1.1.2              4ef0a7a33734        24 months ago       163MB
    vmware/harbor-ui               v1.1.2              4ee8f190f366        24 months ago       183MB
    vmware/harbor-adminserver      v1.1.2              cdcf1bed7eb4        24 months ago       142MB
    vmware/harbor-db               v1.1.2              fcb8aa7a0640        24 months ago       329MB
    vmware/registry                2.6.1-photon        0f6c96580032        2 years ago         150MB
    192.168.126.162/harbor/nginx   latest              8ddadb143133        2 years ago         199MB
    vmware/nginx                   1.11.5-patched      8ddadb143133        2 years ago         199MB
    vmware/harbor-log              v1.1.2              9c46a7b5e517        2 years ago         192MB
    

    3)push到仓库

    [root@localhost ~]# docker push 192.168.126.162/harbor/nginx:latest
    The push refers to repository [192.168.126.162/harbor/nginx]
    3569f62067e2: Pushed 
    3f117c44afbb: Pushed 
    c4a8b7411af4: Pushed 
    fe4c16cbf7a4: Pushed 
    latest: digest: sha256:3dce35afeadd7195877b17bf1514b9e388ed671afe428441fe5e0b02cdc26eeb size: 1160
    

    上传成功后,登录Web Harbor,选择项目harbor,就可以查看刚刚上传的nginx镜像了
    在这里插入图片描述
    3)、创建用户并分配权限

    点击系统管理下的用户管理,点击创建用户,输入相关信息
    在这里插入图片描述
    将刚刚创建的用户添加到harbor项目成员中,点击项目,选择harbor项目,点击成员,点击添加成员,添加姓名选择角色
    在这里插入图片描述在这里插入图片描述
    使用新建的用户将刚刚上传的nginx镜像拉取下来

    先将刚刚nginx镜像删除

    [root@localhost ~]# docker images
    REPOSITORY                     TAG                 IMAGE ID            CREATED             SIZE
    vmware/harbor-jobservice       v1.1.2              4ef0a7a33734        24 months ago       163MB
    vmware/harbor-ui               v1.1.2              4ee8f190f366        24 months ago       183MB
    vmware/harbor-adminserver      v1.1.2              cdcf1bed7eb4        24 months ago       142MB
    vmware/harbor-db               v1.1.2              fcb8aa7a0640        24 months ago       329MB
    vmware/registry                2.6.1-photon        0f6c96580032        2 years ago         150MB
    192.168.126.162/harbor/nginx   latest              8ddadb143133        2 years ago         199MB
    vmware/nginx                   1.11.5-patched      8ddadb143133        2 years ago         199MB
    vmware/harbor-log              v1.1.2              9c46a7b5e517        2 years ago         192MB
    [root@localhost ~]# docker rmi 192.168.126.162/harbor/nginx:latest
    Untagged: 192.168.126.162/harbor/nginx:latest
    Untagged: 192.168.126.162/harbor/nginx@sha256:3dce35afeadd7195877b17bf1514b9e388ed671afe428441fe5e0b02cdc26eeb
    

    退出admin帐号,使用刚刚创建的用户登录

    [root@localhost ~]# docker logout 192.168.126.162
    Removing login credentials for 192.168.126.162
    [root@localhost ~]# docker login 192.168.126.162
    Username: harbor
    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
    

    将harbor中的nginx镜像拉取到本地

    [root@localhost ~]# docker pull 192.168.126.162/harbor/nginx:latest
    latest: Pulling from harbor/nginx
    Digest: sha256:3dce35afeadd7195877b17bf1514b9e388ed671afe428441fe5e0b02cdc26eeb
    Status: Downloaded newer image for 192.168.126.162/harbor/nginx:latest
    [root@localhost ~]# docker images
    REPOSITORY                     TAG                 IMAGE ID            CREATED             SIZE
    vmware/harbor-jobservice       v1.1.2              4ef0a7a33734        24 months ago       163MB
    vmware/harbor-ui               v1.1.2              4ee8f190f366        24 months ago       183MB
    vmware/harbor-adminserver      v1.1.2              cdcf1bed7eb4        24 months ago       142MB
    vmware/harbor-db               v1.1.2              fcb8aa7a0640        24 months ago       329MB
    vmware/registry                2.6.1-photon        0f6c96580032        2 years ago         150MB
    192.168.126.162/harbor/nginx   latest              8ddadb143133        2 years ago         199MB
    vmware/nginx                   1.11.5-patched      8ddadb143133        2 years ago         199MB
    vmware/harbor-log              v1.1.2              9c46a7b5e517        2 years ago         192MB
    
    展开全文
  • harbor仓库搭建

    2021-01-30 21:33:05
    文章内容分别做了docker仓库搭建以及客户端验证。 特别说明: 此文章直接复制脚本内容就可以搭建成功(前提是你的etc下也有一个harbor的安装包如果没有可以自己网上下载或者找博主私信)。 系统环境: centos7 ...

    由于k8s拉取镜像速度很慢,因此做了此文章。
    文章内容分别做了docker仓库搭建以及客户端验证。
    特别说明:
    此文章直接复制脚本内容就可以搭建成功(前提是你的etc下也有一个harbor的安装包如果没有可以自己网上下载或者找博主私信)。

    系统环境:
    centos7

    IP节点名称
    192.168.182.150master
    192.168.182.151node-1

    1、修改主机名称,关闭防火墙,关闭selinux。
    所有节点执行(主机名称需要在相应节点执行)

    hostnamectl set-hostname master
    systemctl stop firewalld
    systemctl disable firewalld
    setenforce 0
    

    2、解压harbor软件、安装docker、安装docker-compose。
    master节点执行。

    cd /etc
    tar -zxf harbor-offline-installer-v1.10.1.tgz
    yum install -y yum-utils device-mapper-persistent-data lvm2
    yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
    yum install docker-ce  -y 
    curl -L https://get.daocloud.io/docker/compose/releases/download/1.25.4/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
    chmod +x /usr/local/bin/docker-compose
    docker-compose -v
    

    3、修改harbor内容。
    mastet节点执行

    cat /etc/harbor/harbor.yml
    
      1 # Configuration file of Harbor
      2 
      3 # The IP address or hostname to access admin UI and registry service.
      4 # DO NOT use localhost or 127.0.0.1, because Harbor needs to be accessed by external clients.
      5 hostname: www.www.com
      6 
      7 # http related config
      8 http:
      9   # port for http, default is 80. If https enabled, this port will redirect to https port
     10   port: 80
     11 
     12 # https related config
     13 https:
     14   # https port for harbor, default is 443
     15   port: 443
     16   # The path of cert and key files for nginx
     17   certificate: /etc/harbor/ssl/www.www.crt
     18   private_key: /etc/harbor/ssl/www.www.com.key
     19 
     20 # Uncomment external_url if you want to enable external proxy
     21 # And when it enabled the hostname will no longer used
     22 # external_url: https://reg.mydomain.com:8433
     23 
     24 # The initial password of Harbor admin
     25 # It only works in first time to install harbor
     26 # Remember Change the admin password from UI after launching Harbor.
     27 harbor_admin_password: Harbor12345
     28 
     29 # Harbor DB configuration
     30 database:
     31   # The password for the root user of Harbor DB. Change this before any production use.
     32   password: root123
     33   # The maximum number of connections in the idle connection pool. If it <=0, no idle connections are retained.
     34   max_idle_conns: 50
     35   # The maximum number of open connections to the database. If it <= 0, then there is no limit on the number of open connections.
     36   # Note: the default number of connections is 100 for postgres.
     37   max_open_conns: 100
     38 
     39 # The default data volume
     40 data_volume: /data
    

    4、配置所需证书、创建所需目录。
    master节点执行

    mkdir /data
    mkdir /etc/harbor/ssl
    cd /etc/harbor/ssl
    openssl req -newkey rsa:4096 -nodes -sha256 -keyout ca.key -x509 -days 365 -out ca.crt
    openssl req -newkey rsa:4096 -nodes -sha256 -keyout www.www.com.key -out www.www.com.csr
    openssl x509 -req -days 365 -in www.www.com.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out www.www.crt
    
    上面证书要注意域名和国家。
    -----
    Country Name (2 letter code) [XX]:CN
    State or Province Name (full name) []:
    Locality Name (eg, city) [Default City]:
    Organization Name (eg, company) [Default Company Ltd]:
    Organizational Unit Name (eg, section) []:
    Common Name (eg, your name or your server's hostname) []:www.www.com
    最后一条命令显示如下成功。
    Signature ok
    subject=/C=CN/L=Default City/O=Default Company Ltd/CN=www.www.com
    Getting CA Private Key
    

    5、安装并启动harbor,修改docker国内源。
    master节点执行。

    systemctl start docker
    vim /etc/docker/daemon.json 
    {"registry-mirrors":["https://t5t8q6wn.mirror.aliyuncs.com"]}
    systemctl daemon-reload
    systemctl restart docker
    ./prepare
    ./install.sh
    

    6、配置开机启动harbor。
    master节点执行

    cat /etc/systemd/system/harbor.service
    [Unit]
    Description=Harbor
    After=docker.service systemd-networkd.service systemd-resolved.service
    Requires=docker.service
    Documentation=http://github.com/vmware/harbor
    
    [Service]
    Type=simple
    Restart=on-failure
    RestartSec=5
    #需要注意harbor的安装位置
    ExecStart=/usr/local/bin/docker-compose -f  /etc/harbor/docker-compose.yml up
    ExecStop=/usr/local/bin/docker-compose -f /etc/harbor/docker-compose.yml down
    
    [Install]
    WantedBy=multi-user.target
    
    
    [root@master harbor]# systemctl daemon-reload
    systemctl enable harbor
    systemctl enable docker
    

    7、web界面访问(去配置文件找密码)。

    在这里插入图片描述
    在这里插入图片描述
    8、创建项目。
    在这里插入图片描述
    9、创建用户(我在截图之前创建了一个用户所以显示用户存在,大家在实验的时候不会出现问题)。
    在这里插入图片描述
    10、把www用户加入到项目。
    在这里插入图片描述
    11、客户端安装docker创建目录。
    node-1节点执行

    yum install -y yum-utils device-mapper-persistent-data lvm2 
    yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
    yum install docker-ce  -y 
    mkdir /etc/docker/certs.d/www.www.com -p
    

    12、master节点拷贝证书到node-1节点、master节点创建相应目录、master节点登录harbor用户。
    master节点执行。

    echo '192.168.182.150 www.www.com' >> /etc/hosts 
    scp www.www.crt root@192.168.182.151:///etc/docker/certs.d/www.www.com
    mdkir -p /etc/docker/certs.d/www.www.com
    cd /etc/docker/certs.d/www.www.com
    cp -a /etc/harbor/ssl/www.www.crt .
    docker login www.www.com -uwww -pAbc123..
    

    13、master上传镜像到harbor。
    master节点执行

    docker pull nginx
    docker tag nginx www.www.com/www/nginx:v1
    docker push www.www.com/www/nginx:v1
    

    14、web界面查看harbor仓库。
    在这里插入图片描述

    15、客户端启动docker、登录harbor。
    node-1节点执行

    systemctl start docker
    systemctl enable docker
    echo '192.168.182.150 www.www.com' >> /etc/hosts 
    [root@node-1 www.www.com]#  docker login www.www.com -uwww -pAbc123..
    WARNING! Using --password via the CLI is insecure. Use --password-stdin.
    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
    
    

    16、客户端下载harbor镜像仓库验证。
    node-1节点执行。

    docker pull www.www.com/www/nginx:v1
    
    v1: Pulling from www/nginx
    a076a628af6f: Pull complete 
    0732ab25fa22: Pull complete 
    d7f36f6fe38f: Pull complete 
    f72584a26f32: Pull complete 
    7125e4df9063: Pull complete 
    Digest: sha256:0b159cd1ee1203dad901967ac55eee18c24da84ba3be384690304be93538bea8
    Status: Downloaded newer image for www.www.com/www/nginx:v1
    www.www.com/www/nginx:v1
    
    
    docker images
    REPOSITORY              TAG       IMAGE ID       CREATED       SIZE
    www.www.com/www/nginx   v1        f6d0b4767a6c   2 weeks ago   133MB
    
    展开全文
  • harbor仓库搭建安装包

    2021-03-15 15:44:31
    harbor-offline-installer-v1.10.2.tgz
  • 1. 安装Harbor 安装方式一:(此处用的方式一) wget -P /usr/local/src/ https://github.com/vmware/harbor/releases/download/v1.2.0/harbor-online-installer-v1.2.0.tgz 安装方式二: 先从网页下载...

    部署私库环境

    0. 前提条件
    linux系统,安装好docker与docker-compose环境
    配置docker环境项详细安装步骤参考:https://blog.csdn.net/qq_36651243/article/details/88682944

    1. 安装Harbor
    安装方式一:(此处用的方式一)

    wget -P /usr/local/src/ https://github.com/vmware/harbor/releases/download/v1.2.0/harbor-online-installer-v1.2.0.tgz
    

    在这里插入图片描述
    安装方式二:
    先从网页下载安装包
    https://github.com/vmware/harbor/releases/download/v1.2.0/harbor-offline-installer-v1.2.0.tgz
    然后通过ftp工具导入虚拟机中。
    2. 解压安装包

    cd /usr/local/src/
    tar zxvf harbor-online-installer-v1.2.0.tgz -C /usr/local/
    

    在这里插入图片描述
    3. 修改配置文件
    先进入安装包解压后的目录

    cd /usr/local/harbor/
    

    配置文件为:harbor.cfg
    在这里插入图片描述
    然后用vi编辑器打开harbor.cfg

    vi harbor.cfg
    

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    上述的修改凭实际需求进行修改

    注意:此处需要配置Nginx,为了防止端口冲突,可以修改docker-compose.yml文件
    在这里插入图片描述
    同样用vi编辑器打开docker-compose.yml

    vi docker-compose.yml
    

    在这里插入图片描述
    4. 执行安装脚本
    脚本可执行文件:install.sh
    在这里插入图片描述

    ./install.sh
    

    在这里插入图片描述
    5. Harbor启动与停止
    Harbor 的日常运维管理是通过docker-compose来完成的,Harbor本身有多个服务进程,都放在docker容器之中运行,因此可以通过docker ps命令查看
    在这里插入图片描述
    也可以通过docker-compose ps查看
    启动Harbor

    docker-compose start
    

    停止Harbor

    docker-comose stop
    

    重启Harbor

    docker-compose restart
    

    6. 访问与测试
    通过先前在harbor.cfg配置的域名或者IP地址可以访问Harbor界面
    在这里插入图片描述
    更多资料:
    Harbor仓库导入导出镜像操作详细步骤
    docker环境配置详细安装步骤

    展开全文
  • harbor仓库搭建.doc

    2019-12-17 11:55:04
    harbor容器仓库搭建
  • 本地Harbor仓库搭建

    2020-12-15 17:29:37
    建立本地Harbor仓库 在docker的daemon.json 中添加证书相关配置,并重启docker "insecure-registries":["https://hub.sunwin.com"] 在hosts中追加域名配置,高亮部分为当前机器ip echo "192.168.1.134 hub.sunwin....

    建立本地Harbor仓库

    在docker的daemon.json 中添加证书相关配置,并重启docker

    "insecure-registries":["https://hub.sunwin.com"]
    

    在hosts中追加域名配置,高亮部分为当前机器ip

    echo "192.168.1.134 hub.sunwin.com" >> /etc/hosts
    

    Harbor 安装:
    Harbor 官方地址: https://github.com/vmware/harbor/releases

    下载软件包

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

    1 、解压软件包:

    tar xvf harbor-offline-installer-<version>.tgz
    

    2 、配置 harbor.cfg
    必选参数,主要需要配置hostname和ui_url_protocol
    hostname :目标的主机名或者完全限定域名
    ui_url_protocol : http 或 https 。默认为 http,修改成https
    db_password :用于 db_auth 的 MySQL 数据库的根密码。更改此密码进行任何生产用途
    max_job_workers :(默认值为 3 )作业服务中的复制工作人员的最大数量。对于每个映像复制作业,工作人员将存储库的所有标签同步到远程目标。增加此数字允许系统中更多的并发复制作业。但是,由于每个工作人员都会消耗一定数量的网络 / CPU / IO 资源,请根据主机的硬件资源,仔细选择该属性的值
    customize_crt :( on 或 off 。默认为 on )当此属性打开时, prepare 脚本将为注册表的令牌的生成 / 验证创建私钥和根证书
    ssl_cert : SSL 证书的路径,仅当协议设置为 https 时才应用
    ssl_cert_key : SSL 密钥的路径,仅当协议设置为 https 时才应用
    secretkey_path :用于在复制策略中加密或解密远程注册表的密码的密钥路径

    3 、创建 https 证书以及配置相关目录权限

    创建文件夹用于存放证书

    mkdir /data/cert
    

    生成私钥(输入两次密码,自己定一个)

    openssl genrsa -des3 -out server.key 2048
    

    创建证书请求(输入刚才的密码,国家、省、市、组织、机构、服务地址如hub.sunwin.com、邮箱地址,后面两处不需要修改,直接回车)

    openssl req -new -key server.key -out server.csr
    

    备份私钥

    cp server.key server.key.org
    

    退私钥密码

    openssl rsa -in server.key.org -out server.key
    

    签名证书

    openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
    

    赋权限

    chmod -R 777 /data/cert
    

    4 、运行脚本进行安装

    ./install.sh
    

    5 、访问测试
    https://reg.yourdomain.com 的管理员门户(将 reg.yourdomain.com 更改为您的主机名, harbor.cfg当中配置的 );
    或者使用如下控制台命令进行测试

    docker login https://reg.yourdomain.com
    

    默认管理员用户名 / 密码为 admin / Harbor12345

    展开全文
  • Harbor私有仓库搭建搭建

    千次阅读 2020-09-24 11:55:28
    Habor是由VMWare公司开源的容器镜像仓库。事实上,Habor是在Docker Registry上进行了相应的 企业级扩展,从而获得了更加广泛的应用,这些新的企业级特性包括:管理用户界面,基于角色的访 问控制 ,AD/LDAP集成
  • harbor 仓库搭建

    2019-09-27 07:21:01
    Registry是Dcoker官方的一个私有仓库镜像,可以将本地的镜像打标签进行标记然后push到以Registry起的容器的私有仓库中。企业可以根据自己的需求,使用Dokcerfile生成自己的镜像,并推到私有仓库中,这样可以大大提高...
  • Harbor仓库搭建

    2019-07-13 22:40:47
    此时需要三个包:docker,docker-compose,harbor docker环境配置: cd /etc/yum.repos.d/ vim westos.repo ##编辑yum源配置文件,此时必须使用rhel7.5镜像,否则解决不了依赖性 yum install containerd....
  • 本地仓库搭建3.本地私有仓库加密认证 一、Docker 仓库 Docker 仓库是用来包含镜像的位置,Docker提供一个注册服务器 (Register)来保存多个仓库,每个仓库又可以包含多个具备不同 tag的镜像。 Docker运行中使用的...
  • Harbor仓库搭建管理

    2020-01-01 14:43:06
    简介: Harbor是一个用于存储和分发Docker镜像...Registry是Dcoker官方的一个私有仓库镜像,可以将本地的镜像打标签进行标记然后push到以Registry起的容器的私有仓库中。企业可以根据自己的需求,使用Dokcerfile生...
  • Harbor私有镜像仓库Harbor介绍参考:Harbor使用docker官方的Registry仓库方案保存镜像,使用数据库保存harbo的一些配置信息。Harbor默认把所有这一套组件全部放在容器里跑,至于如何做高可用和扩展性呢? 官方目前只...
  • harbor仓库搭建16

    2021-05-30 13:56:08
    registry必须把仓库名字带上拉取,不能直接game2048,并且不能在一个局域网的用户匿名拉取 [root@server9 docker]# docker push reg.westos.org/library/game2048 [root@server9 docker]# ls certs.d daemon.json ...
  • Harbor是Vmvare中国团队开发的开源registry仓库,相比docker官方拥有更丰富的权限权利和完善的架构设计,适用大规模docker集群部署提供仓库服务。 2、安装环境(自行准备docker环境) 系统:centos7 docker版本:...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 5,516
精华内容 2,206
关键字:

harbor仓库搭建