概述

Habor是由VMWare公司开源的容器镜像仓库。事实上,Habor是在Docker Registry上进行了相应的企业级扩展,从而获得了更加广泛的应用,这些新的企业级特性包括:管理用户界面,基于角色的访问控制 ,AD/LDAP集成以及审计日志等。

容器的核心在于镜象的概念,由于可以将应用打包成镜像,并快速的启动和停止,因此容器成为新的炙手可热的基础设施CAAS,并为敏捷和持续交付包括DevOps提供底层的支持。

而Habor和Docker Registry所提供的容器镜像仓库,就是容器镜像的存储和分发服务。之所以会有这样的服务存在,是由于以下三个原因:

    • 提供分层传输机制,优化网络传输
      Docker镜像是是分层的,而如果每次传输都使用全量文件(所以用FTP的方式并不适合),显然不经济。必须提供识别分层传输的机制,以层的UUID为标识,确定传输的对象。
    • 提供WEB界面,优化用户体验
      只用镜像的名字来进行上传下载显然很不方便,需要有一个用户界面可以支持登陆、搜索功能,包括区分公有、私有镜像。
    • 支持水平扩展集群
      当有用户对镜像的上传下载操作集中在某服务器,需要对相应的访问压力作分解。

环境搭建

1. 安装docker-compose

安装docker   
yum -y install docker
安装docker-compose
yum install python-pip
pip install docker-compose
启动docker

2. 下载harbor

wget https://github.com/vmware/harbor/releases/download/0.5.0/harbor-offline-installer-0.5.0.tgz
tar zxvf harbor-offline-installer-0.5.0.tgz
cd harbor
修改harbor.cfg 中的hostname供外部访问用
hostname = 172.19.*.11:5000   #添加此端口的目的为了网络安全 不要轻易开放80端口
修改docker-compose.yml
proxy:
image: nginx:1.11.
container_name: nginx
restart: always
volumes:
- ./common/config/nginx:/etc/nginx
ports:
- :
- :
depends_on:
- mysql
- registry
- ui
启动
./prepare
./install

3. 登录

http://192.168.0.10:5000/

默认用户名:admin  密码:Harbor12345  可以在harbor.cfg中修改用户名和密码

4. harbor机器上面配置如下

vi /etc/docker/daemon.json

{ "registry-mirrors": ["https://wb2g6zxl.mirror.aliyuncs.com"],"insecure-registries":["172.19.*.11:5000"]}

172.19.*.11  是阿里云私有IP

systemctl daemon-reload

systemctl restart docker

重启  harbor

查看harbor信息

cd /opt/harbor/harbor   不然docker-compose ps无法执行

[root@iZuf66p8tou7n3ktvgnu8pZ harbor]# docker-compose ps
     Name Command State Ports
     -------------------------------------------------------------------------------------------------------
     harbor-db docker-entrypoint.sh mysqld Up 3306/tcp
     harbor-jobservice /harbor/harbor_jobservice Up
     harbor-log /bin/sh -c crond && rm -f ... Up 0.0.0.0: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:5000->80/tcp
     registry /entrypoint.sh serve /etc/ ... Up 5000/tcp

harbor机器测试登录

[root@iZuf66p8tou7n3ktvgnu8pZ harbor]# docker login 172.19.*.11:
Username (admin): liusw
Password:
Login Succeeded

5. node结点机器上面登录测试

[root@insure docker]# docker login 172.19.*.11:
Username: liusw
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

node节点如果出现如下问题:

[root@node1 ~]# docker login 172.19.*.11:5000
Username: admin
Password:
Error response from daemon: Get https://172.19.*.11:5000/v1/users/: http: server gave HTTP response to HTTPS client

解决办法:

查找docker.service的位置 find / -name docker.service -type f

vi /usr/lib/systemd/system/docker.service  添加如下内容

Environment=PATH=/usr/libexec/docker:/usr/bin:/usr/sbin
ExecStart=/usr/bin/dockerd-current --insecure-registry=172.19.*.11: \
--add-runtime docker-runc=/usr/libexec/docker/docker-runc-current \

重启

systemctl daemon-reload

systemctl restart docker

harbor环境搭建及web使用的更多相关文章

  1. puppeteer(一)环境搭建——新Web自动化工具(同selenium)

    一.简介 https://github.com/GoogleChrome/puppeteer Puppeteer是一个Node库,它提供了一个高级API来控制DevTools协议上的 Chrome或C ...

  2. Cobalt环境搭建及 Web开发注意事项

    一.在Linux系统上搭建Cobalt运行环境 Cobalt是一款开源轻量级HTML5/CSS/JS浏览器,旨在于用最少的CPU.GPU.RAM等资源消耗提供丰富的应用程序开发.为了使前端开发者验证自 ...

  3. Jenkins+PowerShell持续集成环境搭建(三)Web项目

    1. 新建一个名字为HelloWorld.Web的Freesyle项目: 2. 配置源码管理: 3. 编译配置: 版本:选择MSBuild4 文件:D:\CI\Config\HelloWorld.We ...

  4. mac下go环境搭建开发web工程

    1,golang下载: http://www.golangtc.com/download https://golang.org/ https://beego.me/docs/intro/ 2,安装go

  5. Java web与web gis学习笔记(一)——Tomcat环境搭建

    系列链接: Java web与web gis学习笔记(一)--Tomcat环境搭建 Java web与web gis学习笔记(二)--百度地图API调用 JavaWeb和WebGIS学习笔记(三)-- ...

  6. IntelliJ IDEA安装及jsp开发环境搭建

    一.前言 现在.net国内市场不怎么好,公司整个.net组技术转型,就个人来说还是更喜欢.net,毕竟不是什么公司都像微软一样财大气粗开发出VS这样的宇宙级IDE供开发者使用,双击sln即可打开项目, ...

  7. [ArcGIS]ArcGIS Server环境搭建,发布服务,以及使用ArcGIS API for JavaScript

    环境搭建 安装Web服务器 IIS 控制面板-程序-程序和功能-启用或关闭Windows功能,勾选以下 安装VisualStudio,选择包括ASP.NET模块 安装ArcGIS服务器 ArcGIS ...

  8. Mac OS X上IntelliJ IDEA 13与Tomcat 8的Java Web开发环境搭建

    这标题实在有点拗口,不知道怎么写好,但看了标题也就明白文本的内容.最近几天在折腾这些玩意儿,所以写写总结.除了环境搭建,本文还是一篇入门级的上手教程. 去下载一些东西 JDK安装 Tomcat安装 T ...

  9. Docker搭建Java Web运行环境

    1. 前提条件 安装了Docker的64位Linux 操作系统 Linux操作系统镜像 Linux版本的JDK压缩包 Linux版本的Tomcat压缩包 2. 启动容器 容器是在镜像的基础上来运行的, ...

随机推荐

  1. kubernetes使用本地仓库

    k8s与docker的安装 我参考的是 https://kuboard.cn/install/install-k8s.html#%E6%96%87%E6%A1%A3%E7%89%B9%E7%82%B9 ...

  2. Beta冲刺(2/4)

    队名:福大帮 组长博客链接:https://www.cnblogs.com/mhq-mhq/p/11990570.html 作业博客 : https://edu.cnblogs.com/campus/ ...

  3. Link static data in sql source control

    You can link data that doesn't change very often to SQL Source Control. This lets you commit data ch ...

  4. ASP.NET MVC传递Model到视图的多种方式之通用方式的使用

    ASP.NET MVC传递Model到视图的多种方式总结——通用方式的使用 有多种方式可以将数据传递到视图,如下所示: ViewData ViewBag PartialView TempData Vi ...

  5. TortoiseSVN 使用教程

    TortoiseSVN 使用教程 TortoiseSVN 是 Subversion 版本控制系统的一个免费开源客户端,可以超越时间的管理文件和目录. TortoiseSVN 安装 下载地址:https ...

  6. SQL语言Select经典语句

    -- 示例数据 Select * From Employee Select * From Department -- 返回工资最高的员工的信息 Select * From Employee where ...

  7. KL距离(相对熵)

    KL距离,是Kullback-Leibler差异(Kullback-Leibler Divergence)的简称,也叫做相对熵(Relative Entropy).它衡量的是相同事件空间里的两个概率分 ...

  8. 如何让在panel里的子窗体随panel的大小改变而变化?(转)

            private void Form1_Load(object sender, EventArgs e)         {             frm=new Form2();   ...

  9. (三)Centos之安装Xshell

    Xshell就是一个远程控制Centos的软件:(用XShell比较方便,试用的都知道,界面也人性化) 详细介绍请看 百度百科 我随便百度下载了一个中文版的 给下地址  http://pan.baid ...

  10. C#线程 BeginInvoke和EndInvoke使用方法

    一.C#线程概述 在操作系统中一个进程至少要包含一个线程,然后,在某些时候需要在同一个进程中同时执行多项任务,或是为了提供程序的性能,将要执行的任务分解成多个子任务执行.这就需要在同一个进程中开启多个 ...