harbor私有仓库部署
Harbor 简介
Harbor是构建企业级私有docker镜像的仓库的开源解决方案,它是Docker Registry的更高级封装,它除了提供友好的Web UI界面,角色和用户权限管理,用户操作审计等功能外,它还整合了K8s的插件(Add-ons)仓库,即Helm通过chart方式下载,管理,安装K8s插件,而chartmuseum可以提供存储chart数据的仓库【注:helm就相当于k8s的yum】。另外它还整合了两个开源的安全组件,一个是Notary,另一个是Clair,Notary类似于私有CA中心,而Clair则是容器安全扫描工具,它通过各大厂商提供的CVE漏洞库来获取最新漏洞信息,并扫描用户上传的容器是否存在已知的漏洞信息,这两个安全功能对于企业级私有仓库来说是非常具有意义的。
1. 安装docker
yum -y install docker-ce systemctl restart docker && systemctl enable docker
要想用其他节点都要添加
cat > /etc/docker/daemon.json <<EOF { "insecure-registries":["https://hub.wql.com"] #仓库域名 } EOF mkdir -p /etc/systemd/system/docker.service.d systemctl daemon-reload && systemctl restart docker && systemctl enable docker
2.安装docker编排工具compose
最好自己网站下载,容易报错
下载地址:
curl -L https://github.com/docker/compose/releases/download/1.9.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
https://github.com/docker/compose/releases/tag/1.14.0-rc2
https://github.com/docker/compose/releases/tag/1.25.0-rc4
wget https://github.com/docker/compose/releases/tag/1.14.0-rc2/docker-compose-Linux-x86_64
yum -y install lrzsz mv docker-compose /usr/local/bin Chmod a+x /usr/local/bin/docker-compose
3.安装harbor
下载地址: Harbor 官方地址: https://github.com/vmware/harbor/releases
包地址:https://github.com/vmware/harbor/releases/download/v1.2.0/harbor-offline-installer-v1.2.0.tgz
tar -zxvf harbor-offline-installer-v1.2.0.tgz mv harbor /usr/local/ cd /usr/local/harbor/ [root@harbor harbor]# vim harbor.cfg 5 hostname = hub.wql.com 域名 9 ui_url_protocol = https 协议 24 ssl_cert = /data/cert/server.crt #创建一下/data/cert 目录 mkdir -p /data/cert
4. 创建证书
cd /data/cert ]# openssl genrsa -des3 -out server.key 2048 Enter pass phrase for server.key: 这里输入密码,随便填 Verifying - Enter pass phrase for server.key:
[root@harbor cert]# openssl req -new -key server.key -out server.csr #创建证书请求 Enter pass phrase for server.key: 输入密码
You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank. ----- Country Name (2 letter code) [XX]:CN 国家 State or Province Name (full name) []:BJ 城市 Locality Name (eg, city) [Default City]:BJ 地方 Organization Name (eg, company) [Default Company Ltd]:wql 机构 Organizational Unit Name (eg, section) []:wql 组织 Common Name (eg, your name or your server's hostname) []:hub.wql.com 邮箱 Email Address []:wqlong0821@163.com 管理员邮箱 Please enter the following 'extra' attributes to be sent with your certificate request A challenge password []: 是否改密码(这里直接回车) An optional company name []:
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 a+x * 赋权 共4个
5.运行脚本进行安装
cd /usr/local/harbor/ ./install.sh vim /etc/hosts 192.168.4.10 master01 192.168.4.50 node01 192.168.4.51 node02 192.168.4.53 hub.wql.com
6.验证浏览器访问
请注意,默认管理员用户名 / 密码为 admin / Harbor12345
要在/usr/local/harbor/目录
重启harbor ./prepare docker-compose down //关闭docker-compose docker-compose up -d //开启docker-compose
7.命令行登录测试
~]# docker login https://hub.wql.com 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
8.推送镜像
把镜像打标签,并上传harbor docker tag nginx:v1 hub.wql.com/library/nginx:v1 docker push hub.wql.com/library/nginx:v1
下载测试
docker pull hub.wql.com/library/nginx:v1 kubectl run nginx1-deployment --image=hub.wql.com/library/nginx:v1 --port=80 --replicas=1 kubectl get pod kubectl get pod -o wide curl 10.244.3.24
harbor私有仓库部署的更多相关文章
- Docker Harbor私有仓库部署与管理 (超详细配图)
Docker Harbor私有仓库部署与管理 1.Harbor 介绍 2.Harbor部署 3.Harbor管理 1.Harbor 介绍: 什么是 Harbor ? Harbor 是 VMware 公 ...
- harbor私有仓库
私有仓库部署在部署节点上 解压此压缩包(压缩包在上篇博文<kubernetes部署中有链接,可下载>) tar xzf harbor-offline-installer-v1.4.0.tg ...
- 搭建harbor私有仓库
2-1.项目说明 Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器,由VMware开源,其通过添加一些企业必需的功能特性,例如安全.标识和管理等,扩展了开源 Docke ...
- Harbor私有仓库中如何彻底删除镜像释放存储空间?
简介: Harbor私有仓库运行一段时间后,仓库中存有大量镜像,会占用太多的存储空间.直接通过Harbor界面删除相关镜像,并不会自动删除存储中的文件和镜像.需要停止Harbor服务,执行垃圾回收命令 ...
- Docker以http访问Harbor私有仓库(一)
1 说明 前文Centos7搭建Harbor私有仓库(一)我们成功搭建Harbor,本篇我们主要配置Docker以http方式访问私有仓库 2 Docker配置 2.1 Mac系统 2.1.1 配置D ...
- Docker以https访问Harbor私有仓库(二)
1 说明 前文Centos7搭建Harbor私有仓库(二)中,我们以https方式搭建了Harbor,本篇我们主要配置Docker以https方式访问Harbor私有仓库 2 Docker配置 2.1 ...
- Centos7搭建Harbor私有仓库(二)
1 说明 前文Centos7搭建Harbor私有仓库(一)中成功搭建了Harbor,但,是以http方式搭建的,这里我们修改为https方式 以下基于镜像CentOS-7-x86_64-Minimal ...
- 在jenkins中使用shell命令推送当前主机上的docker镜像到远程的Harbor私有仓库
1.jenkins主机上的docker配置 先在Jenkins主机的docke上配置上Harbor私有仓库地址 cat /etc/docker/daemon.json { "insecure ...
- 创建Harbor私有仓库
前提 1.安装docker服务 参考:https://blog.csdn.net/weixin_36522099/article/details/108861134 老名字:docker.docker ...
随机推荐
- MyBatis 原理浅析——基本原理
前言 MyBatis 是一个被广泛应用的持久化框架.一个简单的使用示例如下所示,先创建会话工厂,然后从会话工厂中打开会话,通过 class 类型和配置生成 Mapper 接口的代理实现,最后使用 Ma ...
- Python的Opencv库怎么装
原文章写于时间2019.4 当时鼓捣Opencv库弄了好长时间,前前后后弄了五天,找了好多帖子不知道删除重装了多少次,现在把我试出来正确的方法给大家分享一下. 1.Pycharm 我用的是win10系 ...
- 配置JSTL 解决错误:org.apache.jasper.JasperException
在IDEA中SSM项目开发中, 在TomCat部署ssm项目时,JSTL的错误 错误如下: 1 org.apache.jasper.JasperException: The absolute uri: ...
- C++ stringstream 实现字符与数字之间的转换
c++中利用srtingstream可以将数字转为字符串,或者将字符串转为数字: 首先将double型数字串转成了string: stringnum2string(double *a,int n) { ...
- 凝思磐石安全系统V6.0.8版本(debian)增加多于4个串口方法
在网上找了好多方法,大家基本上都用ubuntu系统做实现演示,里面的有些文件我在凝思系统上根本找不到,最终通过摸索已解决,记录下操作过程(整个过程都需要在root用户下进行): 判断系统目前能识别的串 ...
- 面试题:对NotNull字段插入Null值 有啥现象?
Hi,大家好!我是白日梦. 今天我要跟你分享的话题是:"对NotNull字段插入Null值有啥现象?" 一. 推荐阅读 首发地址:https://mp.weixin.qq.com/ ...
- Pytest学习(七) - skip、skipif的使用
前言 作为一个java党,我还是觉得pytest和testng很像,有时候真的会感觉到代码语言在某种程度上是相通的,那么今天来说说这两个知识点. skip和skipif,见名知意,就是跳过测试呗,直白 ...
- iptables-centos|mysql navicat登陆不上
iptables-centos: vi /etc/sysconfig/iptables service iptables restart ====================== mysql na ...
- [MIT6.006] 17. Bellman-Ford
如果出现下图所示的负循环,会有相关点的当前最短路径为undefined(即无法定义). 之前我们也看过通用的最短路径算法思路,如下图所示: 这种通用算法会有两个问题: 时间复杂度呈指数性. 如果出现负 ...
- ixgbe 驱动 为xxx驱动做准备1
网卡都是pci设备,因此这里每个网卡驱动其实就是一个pci驱动.并且intel这里是把好几个万兆网卡(82599/82598/x540)的驱动做在一起的.V4L2 一样几个类型摄像头合并在一起 先说一 ...