Harbor 搭建
环境:centos7.4
docker-ce 18.06.0-ce
docker-compose version 1.18.0
harbor 版本: 1.5.2
harbor 安装参考 https://github.com/goharbor/harbor/blob/v1.5.2/docs/installation_guide.md
安装 docker
安装 docker-compose
mkdir /iba/
cd /iba/
wget https://storage.googleapis.com/harbor-releases/harbor-offline-installer-v1.5.2.tgz
tar xvf harbor-online-installer-v1.5.2.tgz
cd harbor
# 修改 hostname
vi harbor.cfg
hostname = harbor #注意: 这里可以写 IP地址,也可以写域名,写域名需确保 DNS 可以解析
# 添加 hosts
vi /etc/hosts
192.168.0.241 harbor
hostnamectl set-hostname harbor
# harbor 存储数据默认是 /data 目录(这个会自动创建),可以根据自身需要挂载一个单独的分区在这个目录下
# 启动,同时启用漏洞分析
./install.sh --with-clair
# 开放防火墙
firewall-cmd --permanent --zone=public --add-port=80/tcp
firewall-cmd --reload
浏览器访问
http://192.168.0.241
用户名:admin
密码:Harbor12345
# 可以执行如下的命令进行停止和启动
cd /iba/software/harbor
# 停止
docker-compose -f ./docker-compose.yml -f ./docker-compose.clair.yml down
# 启动
docker-compose -f ./docker-compose.yml -f ./docker-compose.clair.yml up -d
把镜像上传到 harbor 或下载
# 需要添加 insecure-registries 选项
vi /etc/docker/daemon.json
{
"insecure-registries": ["192.168.0.241"]
}
systemctl reload docker
# 检查
docker info
# 如果 horbor 的仓库不是公开的,需要登录(建议设置公开)
docker login -u admin -p Harbor12345 192.168.0.241
可在配置文件 /root/.docker/config.json 查看
# 打tag,这里需要注意: klvchen 是 Harbor 新建的项目名称。原有的项目为 library
docker tag docker.io/centos:7.4.1708 192.168.0.241/klvchen/centos:7.4
docker push 192.168.0.241/klvchen/centos:7.4
删除 horbor 镜像,这里分为两步:
1.在 webui上先进行软删除
2.进行硬删除,在跑这 harbor 的机器上执行
cd /iba/software/harbor
docker-compose -f ./docker-compose.yml -f ./docker-compose.clair.yml stop
# 打印出来已删除镜像,但不进行空间释放和垃圾回收
docker run -it --name gc --rm --volumes-from registry vmware/registry:2.6.2-photon garbage-collect --dry-run /etc/registry/config.yml
# 执行垃圾回收命令
docker run -it --name gc --rm --volumes-from registry vmware/registry:2.6.2-photon garbage-collect /etc/registry/config.yml
cd /iba/software/harbor
docker-compose -f ./docker-compose.yml -f ./docker-compose.clair.yml start
错误参考
一:登录时遇到错误
[root@node1 ~]# docker login -u admin -p Harbor12345 192.168.0.241
WARNING! Using --password via the CLI is insecure. Use --password-stdin.
Error response from daemon: Get http://192.168.0.241/v2/: Get http://harbor/service/token?account=admin&client_id=docker&offline_token=true&service=harbor-registry: dial tcp: lookup harbor on 114.114.114.114:53: no such host
解决办法:
#添加hosts
192.168.0.241 harbor
二:运行一段时间后修改配置文件,报错 Couldn't find env file: /iba/software/harbor/common/config/clair/clair_env
cd /iba/software/harbor
# 停止
docker-compose -f ./docker-compose.yml -f ./docker-compose.clair.yml down
# 启动
./prepare
./install.sh --with-clair
Harbor 搭建的更多相关文章
- 企业级镜像仓库harbor搭建
企业级镜像仓库harbor搭建 一. Harbor概述 VMware公司最近开源了企业级Registry项目Harbor,其的目标是帮助用户迅速搭建一个企业级的Docker registry 服 ...
- Kubernetes集群搭建之企业级环境中基于Harbor搭建自己的私有仓库
搭建背景 企业环境中使用Docker环境,一般出于安全考虑,业务使用的镜像一般不会从第三方公共仓库下载.那么就要引出今天的主题 企业级环境中基于Harbor搭建自己的安全认证仓库 介绍 名称:Harb ...
- docker 私有仓库之Harbor搭建与使用
Harbor搭建 下载Harbor: http://harbor.orientsoft.cn/ #下载offline版本 配置Harbor tar xvf harbor-online-installe ...
- docker的私有化仓库harbor搭建
目前比较流行的docker私有化仓库是harbor,harbor是一个github开源的项目,直接在github上搜索即可,下载地址:https://github.com/goharbor/harbo ...
- harbor搭建及使用
harbor搭建及使用 1 系统及软件版本 1.1 系统版本 # uname -a Linux localhost.localdomain 3.10.0-862.el7.x86_64 #1 SMP ...
- 搭建docker镜像仓库(二):使用harbor搭建本地镜像仓库
目录 一.系统环境 二.前言 三.Harbor 四.使用harbor搭建私有镜像仓库 4.1 环境介绍 4.2 k8smaster节点安装配置harbor 4.2.1 安装harbor离线包 4.2. ...
- 企业级仓库harbor搭建
1.Harbor是什么? Harbor是Vmvare中国团队开发的开源registry仓库,相比docker官方拥有更丰富的权限权利和完善的架构设计,适用大规模docker集群部署提供仓库服务.在企业 ...
- 【K8S】基于Docker+K8S+GitLab/SVN+Jenkins+Harbor搭建持续集成交付环境(环境搭建篇)
写在前面 最近在 K8S 1.18.2 版本的集群上搭建DevOps环境,期间遇到了各种坑.目前,搭建环境的过程中出现的各种坑均已被填平,特此记录,并分享给大家! 服务器规划 IP 主机名 节点 操作 ...
- harbor搭建与使用
前两天测试服务docker化并k8s布署时,出于方便,使用了docker hub.由于我们的代码是要放到镜像里的,通过运行容器,便能获取我们的全部代码,风险很大.所以我们决定进行私有化的镜像部 ...
- Kubernets二进制安装(5)之私有仓库harbor搭建
在IP地址为192.168.80.50,机器名为mfyxw50上搭建私有仓库harbor harbor下载地址: harbor下载连接地址:https://github.com/goharbor/ha ...
随机推荐
- linux、centos下安装配置vim
---恢复内容开始--- 1.一般情况下安装上centos后,会有vi,没有vim(以后可能会有吧) 如果不确定自己有没有vim,使用命令 rpm -qa|grep vim 查看,如果有的话,会显示三 ...
- Javascript高级编程学习笔记(4)—— JS中的数据类型(2)
接着昨天的文章,今天这篇文章主要讲述JS中剩余的两种数据类型String,和Object String类型 对于该类型,书中给出的解释为:由0或多个16为Unicode字符组成的字符序列. 对于JS中 ...
- Java学习笔记44(多线程一:Thread类)
多线程的概念:略 多线程的目的:提高效率 主线程: package demo; //主线程 public class Demo { public static void main(String[] a ...
- Java学习笔记40(缓冲流)
缓冲流: 在读写文件的各种流中,最令人烦恼的就是效率问题, 而缓冲流的目的就是提高读写效率 字节输出缓冲流: package demo; import java.io.BufferedOutputSt ...
- ElasticSearch权威指南学习(分布式文档存储)
路由文档到分片 当你索引一个文档,它被存储在单独一个主分片上.Elasticsearch是如何知道文档属于哪个分片的呢?当你创建一个新文档,它是如何知道是应该存储在分片1还是分片2上的呢? 进程不能是 ...
- consul初步学习
简介 consul是一个服务发现框架 类似的还有zookeeper,eureka,etcd等 作用 服务发现(service discovery) 健康检查(health checking) 配置存储 ...
- Java 10 实战第 1 篇:局部变量类型推断
现在 Java 9 被遗弃了直接升级到了 Java 10,之前也发过 Java 10 新特性的文章,现在是开始实战 Java 10 的时候了. 今天要实战的是 Java 10 中最重要的特性:局部变量 ...
- Xamarin.Android Timer使用方法
首先声明命名空间: using System.Threading; 然后创建Timer对象: Timer timer; 接着实例化timer并且给委托事件: TimerCallback timerDe ...
- java微信分享
先吐槽一下!!! 哎,张小龙写的教程真差,要研究半天才能用上,大家按我的步骤12345,包你药到病除: 1.官方参考: https://mp.weixin.qq.com/wiki?t=resource ...
- 如何将页面上的数据导入excel中
网上关于页面数据导入excel的文章很多,但是大部分都是关于 ActiveXObject 对象,可是ActiveXObject 对象是只支持IE的,可我连IE11也测试了,还是无法识别,又查到消息,好 ...