Docker镜像仓库Harbor部署
一、Harbor组件
|
组件 |
功能 |
|
harbor-adminserver |
配置管理中心 |
|
harbor-db |
Mysql数据库 |
|
harbor-jobservice |
负责镜像复制 |
|
harbor-log |
记录操作日志 |
|
harbor-ui |
Web管理页面和API |
|
nginx |
前端代理,负责前端页面和镜像上传/下载转发 |
|
redis |
会话 |
|
registry |
镜像存储 |
二、Harbor部署
Harbor安装有3种方式:
l 在线安装:从Docker Hub下载Harbor相关镜像,因此安装软件包非常小
l 离线安装:安装包包含部署的相关镜像,因此安装包比较大
l OVA安装程序:当用户具有vCenter环境时,使用此安装程序,在部署OVA后启动Harbor
我们采用离线安装,首先下载离线安装包:https://github.com/vmware/harbor/releases
HTTP方式部署
n 首选安装docker
wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repo
yum -y install docker-ce-18.06.1.ce-3.el7
systemctl enable docker && systemctl start docker
docker --version
n 修改仓库地址,注意这个地方很重要,如果不上传可以忽略
cat >/etc/docker/daemon.json <<EOF
{
"registry-mirrors": [
"https://registry.docker-cn.com"
],
"insecure-registries": [
"192.168.10.122"
]
}
EOF
验证是否成功
systemctl
daemon-reload
systemctl
restart docker.service
docker
info

安装docker-compose
yum install -y docker-compose
Harbor下载地址:
https://storage.googleapis.com/harbor-releases/release-1.7.0/harbor-offline-installer-v1.7.5.tgz

n 解压文件
tar xf harbor-offline-installer-v1.7.5.tgz
cd harbor/
编辑配置文件
vim /root/harbor/harbor.cfg 确保下面几个地方没问题,如果不是有80端口,可以加上端口号,不会与其他端口冲突,例如:192.168.10.122
#不加证书http
hostname = 192.168.10.122
ui_url_protocol = http
harbor_admin_password = Harbor12345
#下面的是加证的配置https
#hostname = reg.fage.com
#ui_url_protocol = http
#ssl_cert = ./ssl/reg.fage.com.crt
#ssl_cert_key = ./ssl/reg.fage.com.key
#harbor_admin_password = Harbor12345
准备配置文件:
./prepare

开始安装并启动barbor
cd /root/harbor/ && ./install.sh

验证
cd installpath && docker-compose ps
需要状态全部为UP才是成功的

浏览器输入地址就可以访问了
http://192.168.10.122
账号:admin
密码:Harbor12345


上传镜像到harbor
接下来将刚才构建的镜像推送到Harbor仓库,先看看我们要推送的镜像
docker images
n 在推送之前,需要注意第一列,这个完整格式是
regisry.stnrs.com/library/hello-word:latest
镜像中心域名 项目名称 名称 版本
如果镜像只放在本地存储REPOSITORY写什么都可以,但推送到镜像仓库就必须指定仓库中心地址。
所以,先打重命名REPOSITORY,其实就是引用源镜像标记了一个目标镜像
上传镜像需要先登录,不登录会报错
docker image tag nginx 192.168.10.122/library/nginx-1
docker login 192.168.10.122
docker push 192.168.10.122/library/nginx-1
登录网页看也一样能看到镜像
http://192.168.10.122/harbor/projects/1/repositories

客户端使用
如果没有加入证书就要修改这个文件才能登录
cat >/etc/docker/daemon.json <<EOF
{
"registry-mirrors": [
"https://b9pmyelo.mirror.aliyuncs.com"
],
"registry-mirrors": [
"https://registry.docker-cn.com"
],
"insecure-registries": [
"192.168.10.112"
]
}
EOF
重置系统环境
systemctl daemon-reload
systemctl restart docker.service

登录成功后才能上传镜像
docker login 192.168.10.112
docker image tag nginx-v1 192.168.10.112/nginx-v1
docker push 192.168.10.112/nginx-v1
加密方式
docker login reg.fage.com
docker login reg.fage.com
docker image tag nginx-v1 reg.fage.com/nginx-v1
docker push reg.fage.com /nginx-v1
Docker镜像仓库Harbor部署的更多相关文章
- docker 镜像仓库 Harbor 部署 以及 跨数据复制
docker 镜像仓库 Harbor 部署 跨数据复制 Harbor 是 Vmwar 公司开源的 企业级的 Docker Registry 管理项目 它主要 提供 Dcoker Registry 管理 ...
- 企业级Docker镜像仓库Harbor部署与使用
yum install docker 官网地址:https://docs.docker.com/compose/install/ 运行此命令以下载Docker Compose的当前稳定版本 1 sud ...
- 离线手动部署docker镜像仓库——harbor仓库(HTTPS)
实验环境: harbor服务器系统:CentOS Linux release 7.5.1804 (Core)harbor服务器IP:10.1.12.114harbor版本:v1.5.0docker版本 ...
- Docker镜像仓库Harbor之Swagger REST API整合配置
转载自:https://cloud.tencent.com/developer/article/1010618 1.Swagger 介绍 Swagger 是一个规范和完整的框架,用于生成.描述.调用和 ...
- docker 系列 - 企业级私有镜像仓库Harbor部署(转载)
本文转载自 搜云库 的文章 https://www.jianshu.com/p/7d76850de03f , 感谢作者 3.png 上一篇文章搭建了一个具有基础功能,权限认证.TLS 的私有仓库, ...
- Docker镜像仓库Harbor搭建及配置
一.harbor简介 Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器,通过添加一些企业必需的功能特性,例如安全.标识和管理等,扩展了开源Docker Distribut ...
- docker开源仓库Harbor部署笔记
Harbor介绍Harbor是Vmvare团队开发的开源企业级registry仓库,相比docker官方拥有更丰富的权限权利和完善的架构设计,适用大规模docker集群部署提供仓库服务.项目地址:ht ...
- Docker镜像仓库Harbor之搭建及配置
目录 Harbor介绍环境.软件准备Harbor服务搭建Harbor跨数据复制配置FAQ1.Harbor 介绍 Docker容器应用的开发和运行离不开可靠的镜像管理,虽然Docker官方也提供了公共的 ...
- Docker私有仓库Harbor部署与使用
一.harbor介绍 Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器. 由下面几个组件组成: proxy:nginx前端代理,主要是分发前端页面ui访问和镜像上传和下载 ...
随机推荐
- 【转】Android 5.0 : Parsing Data for android-21 failed unsupported major.minor version 51.0
http://code2care.org/pages/parsing-data-for-android-21-failed-unsupported-major.minor-version-51.0/ ...
- beautifulsoup教程
beautifulsoup教程 BeautifulSoup4是爬虫必学的技能.BeautifulSoup最主要的功能是从网页抓取数据,Beautiful Soup自动将输入文档转换为Unicode编码 ...
- OpenvSwitch系列之八 vxlan隧道
Open vSwitch系列之一 Open vSwitch诞生 Open vSwitch系列之二 安装指定版本ovs Open vSwitch系列之三 ovs-vsctl命令使用 Open vSwit ...
- MySQL教程 | 菜鸟教程
装数据库失败后的重装步骤!!! --[创建数据库]CREATE DATABASE <数据库名>: --使用mysqladamin 创建数据库-- 使用普通用户,你可能需要特定的权限来创建或 ...
- 修改mysql、oracle、sqlserver默认端口
一.修改mysql默认端口1202 1.修改mysql安装路径下的my.ini文件中的2个port值 2.修改后重启服务,win+r输入services.msc进入服务,重启服务 二.修改oracle ...
- pycharm写的代码提交到git上,提示需要merge失败时解决办法
当遇到pycharm代码提交需要合并报错时 原因:pycharm目录和git中目录冲突了 解决办法:1.先在git仓库中创建一个文件夹,比如day1 2.然后在pycharm中update一下,可以看 ...
- 工具类-Fastjson入门使用
简介 什么是Fastjson? fastjson是阿里巴巴的开源JSON解析库,它可以解析JSON格式的字符串,支持将Java Bean序列化为JSON字符串,也可以从JSON字符串反序列化到Java ...
- SpringBoot中使用切面的每次传的参数,进行解析,验签,并返回解码后的参数
目的,在每次请求的时候,对每次传的参数,进行解析,验签,并返回解码后的参数, 以json传递: 例子背景: IOT平台提供对外可访问的接口, 需要对所有参数的传递做到 不泄露.认证的目的:所以需要在每 ...
- Linux高级命令进阶
输出重定向 场景:一般命令的输出都会显示在终端中,有些时候需要将一些命令的执行结果想要保存到文件中进行后续的分析/统计,则这时候需要使用到的输出重定向技术. >:覆盖输出,会覆盖掉原先的文件内容 ...
- Redis—HyperLogLog
HyperLogLog 实现一个功能 统计网站的UV (user view),区别PV (page view) 数据去重 统计总数 同一个用户的反复点击进入记为 1 次 解决方案 最简单的思路是记录集 ...