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访问和镜像上传和下载 ...
随机推荐
- django学习(二)
1.反向解析 什么是方向解析呢? 通过一些方法得到一个结果,该结果可以直接访问对应url出发视图函数. 先给一个路由和视图函数起一个别名.但是我们要注意的是反向解析的别名是不可以冲突的!!!不然会出现 ...
- Codeforces 1324F Maximum White Subtree DFS
题意 给你无根一颗树,每个节点是黑色或白色.对于每一个节点,问包含该节点的权值最大的子树. 子树的权值等于子树中白点的个数减去黑点的个数. 注意,这里的子树指的是树的联通子图. 解题思路 这场就这题卡 ...
- Java实现内嵌浏览器
创建项目 ----> 导入需要的jar ----> 代码实现 需要的jar: https://pan.baidu.com/s/1MEZ1S0LnKSMGQm24QWgmCw 代码: ...
- 用Python写一个向数据库填充数据的小工具
一. 背景 公司又要做一个新项目,是一个合作型项目,我们公司出web展示服务,合作伙伴线下提供展示数据. 而且本次项目是数据统计展示为主要功能,并没有研发对应的数据接入接口,所有展示数据源均来自数据库 ...
- Java 合并、拆分PPT幻灯片
序 在日常使用PPT时,为了便于操作和管理文档,时常会遇到需要将PPT幻灯片进行合并或拆分的情况.本文将通过Java程序来演示如何进行上述操作. 示例要点: 1. 合并PPT幻灯片 1.1 将第一个P ...
- mysqli报错注入常见函数
以下均摘自<代码审计:企业级Web代码安全架构>一书 1.floor() select * from test where id=1 and (select 1 from (select ...
- Linux 获取屏幕分辨率与窗口行列数(c/c++)
获取当前分辨率 #include<stdio.h> #include<sys/types.h> #include<sys/stat.h> #include<s ...
- 第9课 - const 和 volatile分析
第9课 - const和volatile分析 1. const只读变量 (1)const修饰的变量是只读的,本质上还是变量,并不是真正意义上的常量 ※※ const只是告诉编译器该变量 ...
- MySQL For Linux(CentOS/Ubuntu/Debian/Fedora/Arch)一键安装脚本(5.1-8.0)
简介 很多童鞋不懂这么在Linux系统安装MySQL,网上大多数教程较复杂,不太适合小白安装,本教程提供一键安装脚本供大家使用,教大家怎么在Linux操作系统( 支持CentOS/Ubuntu/Deb ...
- VS2017报错:未识别符vector
解决办法:添加头文件#include<vector>,添加命名空间 using namespace std.