Docker官方的Docker Registry镜像,可以用来储存和分发Docker镜像。不过实在不昨的,仅仅能储存和分发镜像,也不提供UI,你还得自己找一个过时的UI搭建,受限制于Docker Registry,能找到的开源UI界面多数也不昨的。相反精心设计过的HarBor 最合适企业级应用,提供良好的WEB界面进行管理并且集成了相当多的功能,十分舒服。

前置条件

安装docker:Docker 安装,常用命令 - Net码畜 - 博客园 (cnblogs.com)

安装docker-docker-compose:Releases · docker/compose · GitHub

docker-compose离线安装:

从GitHub上面下载二进制文件(选择docker-compose-linux-x86_64 版本),然后拷到服务器路径下:/usr/local/bin/ ,将文件重命名为:docker-compose ,那么完整的路径是:/usr/local/bin/docker-compose

给权限:

sudo chmod +x /usr/local/bin/docker-compose

测试结果:

docker-compose --version

harbor搭建

harbor支持在线安装和离线安装两种模式,建议离线安装,毕竟离线下载都是件困难的事件,咱们就别搞什么在线安装给自己刨坑了。

官网地址:https://goharbor.io/

github下载地址:Releases · goharbor/harbor (github.com)

从github上面下载最新之后,上传至服务器(假设是根目录),然后解压文件。

tar xzvf harbor-offline-installer-v2.8.2.tgz

进入harbor文件夹,将配置文件harbor.yml.tmpl 修改为harbor.yml之后,编辑harbor.yml

第一个圈圈是修改主机名可以填写IP,正式环境建议使用域名否则docker login容易出现不清不楚的问题(亲测,改用域名之后就流畅了)。

第二圈是禁用HTTPS,看你的需求了。

第三圈是安装的默认密码,账号是admin, 密码是Harbor12345 , 自行修改。

修改完之后,直接运行。

./install.sh

静静等待,默认会帮你搞定一切,提示成功之后,输入IP/域名就可以访问了

服务重启

使用docker ps 查看容器,你会发现很多容器在运作,才保证这么多功能的Harbor在正常运行。

harbor依赖很多镜像组成服务,这些容器是必须启动,官方推荐配置是2核4G,为了保证这些容器的启动正常,内置了一个容器编排文件:docker-compose.yml

重启服务器使用docker ps 查看,你会发现多容器没有在运行,原因是因为这些容器设置:restart: always ,但是容器之间有依赖关系,因为没有按正确的顺序启动导致部分容器启动之后就失败了,所以需要你手动在Harbor目录下运行:docker-compose.yml

docker-compose up -d

-d 表示在后台运行,docker-compose 会自己寻找当前目录下docker-compose.yml运行。如果每次重启手动运行嫌麻烦,可以做起服务,让系统重启帮你运行一次。

使用命令: vi  /etc/systemd/system/harbor.service

[Unit]
Description=Harbor service
Requires=docker.service
After=docker.service [Service]
Type=simple
Restart=always
WorkingDirectory=/harbor //改成你的harbor路径
ExecStart=/usr/local/bin/docker-compose up //改成你的docker-compost路径 [Install]
WantedBy=multi-user.target

设置开机启动和启动

sudo systemctl enable harbor.service
sudo systemctl start harbor.service

重启服务器测试一下,万事大吉~

harbor 搭建和部署的更多相关文章

  1. Kubernetes集群搭建之企业级环境中基于Harbor搭建自己的私有仓库

    搭建背景 企业环境中使用Docker环境,一般出于安全考虑,业务使用的镜像一般不会从第三方公共仓库下载.那么就要引出今天的主题 企业级环境中基于Harbor搭建自己的安全认证仓库 介绍 名称:Harb ...

  2. harbor搭建及使用

    harbor搭建及使用   1 系统及软件版本 1.1 系统版本 # uname -a Linux localhost.localdomain 3.10.0-862.el7.x86_64 #1 SMP ...

  3. Docker Harbor私有仓库部署与管理 (超详细配图)

    Docker Harbor私有仓库部署与管理 1.Harbor 介绍 2.Harbor部署 3.Harbor管理 1.Harbor 介绍: 什么是 Harbor ? Harbor 是 VMware 公 ...

  4. jenkins+git+maven搭建自动化部署项目环境

    简介    折腾了两个晚上,趁着今晚比较有空,把jenkins+git+maven搭建自动化部署项目环境搭建的过程记录一下,这里我把github作为git的远程仓库(https://github.co ...

  5. 使用gogs,drone搭建自动部署

    使用gogs,drone搭建自动部署 使用gogs,drone,docker搭建自动部署测试环境 Gogs是一个使用go语言开发的自助git服务,支持所有平台Docker是使用go开发的开源容器引擎D ...

  6. 记录使用gogs,drone搭建自动部署测试环境

    使用gogs,drone,docker搭建自动部署测试环境 Gogs是一个使用go语言开发的自助git服务,支持所有平台 Docker是使用go开发的开源容器引擎 Drone是一个基于容器技术的持续集 ...

  7. LAMP 搭建wordpress部署教程贴.

    LAMP 搭建wordpress部署教程贴.这是一篇主要将LAMP,并且通过wordpress来进行验证,演示.如何去部署PHP CMS很多新手看到LAMP就很很头大,觉得很难搞,编译安装,搞了好几天 ...

  8. 企业级镜像仓库harbor搭建

    企业级镜像仓库harbor搭建 一.    Harbor概述 VMware公司最近开源了企业级Registry项目Harbor,其的目标是帮助用户迅速搭建一个企业级的Docker registry 服 ...

  9. Vue项目搭建与部署

    Vue项目搭建与部署 一,介绍与需求 1.1,介绍 Vue  是一套用于构建用户界面的渐进式框架.与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用.Vue两大核心思想:组件化和数据驱动.组 ...

  10. React项目搭建与部署

    React项目搭建与部署 一,介绍与需求 1.1,介绍 1.1.1,React简介 React 是一个用于构建用户界面的 JAVASCRIPT 库. React主要用于构建UI,很多人认为 React ...

随机推荐

  1. [Java SE]JDK版本特性解读:@PostStruct[JDK1.6-JDK1.8]

    1 @PostStruct 1.1 概述 定义及用途 @PostConstruct(javax.annotation.PostConstruct)注解好多人以为是Spring提供的.而实际上是Java ...

  2. Solon2 之 Groovy 语言开发后端接口项目

    今天再做个新的尝试,用 Solon 框架写个 Groovy 后端项目.借助 "Solon Initializr" 生成个项目模板,会比较方便. 1.生成项目模板 打开"S ...

  3. [数据分析与可视化] Python绘制数据地图2-GeoPandas地图可视化

    本文主要介绍GeoPandas结合matplotlib实现地图的基础可视化.GeoPandas是一个Python开源项目,旨在提供丰富而简单的地理空间数据处理接口.GeoPandas扩展了Pandas ...

  4. 开源项目audioFlux: 针对音频领域的深度学习工具库

    目录 时频变换 频谱重排 倒谱系数 解卷积 谱特征 音乐信息检索 audioFlux是一个Python和C实现的库,提供音频领域系统.全面.多维度的特征提取与组合,结合各种深度学习网络模型,进行音频领 ...

  5. JS 对输入框进行限制(常用的都有)

    文章来源 http://www.soso.io/article/24096.html 1.文本框只能输入数字代码(小数点也不能输入) 代码如下: <input οnkeyup="thi ...

  6. CesiumJS 源码杂谈 - 从光到 Uniform

    目录 1. 有什么光 2. 光如何转换成 Uniform 以及何时被调用 2.1. 统一值状态对象(UniformState) 2.2. 上下文(Context)执行 DrawCommand 2.3. ...

  7. 06-打包html资源

    /** * loader:1. 下载 2. 使用(配置loader) * plugins:1. 下载 2. 引入 3. 使用 */ const { resolve } = require('path' ...

  8. js-函数记忆

    函数记忆: 指将上次的(计算结果)缓存起来,当下次调用时,如果遇到相同的(参数),就直接返回(缓存中的数据). 实现原理:将参数和对应的结果保存在对象中,再次调用时,判断对象 key 是否存在,存在返 ...

  9. vs 解决方案定位当前打开的cs文件

    可以通过工具-选项-项目和解决方案-勾选[在解决方案资源管理器中跟踪活动项]

  10. 快速上手Linux核心命令(四):文件内容相关命令

    @ 目录 前言 cat 合并文件或查看文件内容 more 分页显示文件内容 less 分页显示文件内容 head 显示文件内容头部 tail 显示文件内容尾部 tailf 跟踪日志文件 diff 比较 ...