docker的私有化仓库harbor搭建
目前比较流行的docker私有化仓库是harbor,harbor是一个github开源的项目,直接在github上搜索即可,下载地址:https://github.com/goharbor/harbor/releases
搞一个稳定版的离线安装,博主用的是1.10.0
下载好的离线包,上传到centos7相应的一个目录下:/software/harbor
解压:tar -zxvf harbor-offline-installer-v1.10.0.tgz
解压后目录如下:

安装harbor需要确保相关依赖的安装,需要安装docker-compose、docker以及python2.7以上还有openssl,
docker-compose的安装:
1、下载docker-compose
curl -L https://github.com/docker/compose/releases/download/1.25.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
2、进入相应目录授权查看

openssl和docker之前已经安装过了

配置harbor
主要配置参数如下:
hostname 目标主机的主机名,用于访问Portal和注册表服务。它应该是目标计算机的IP地址或完全限定的域名(FQDN),例如,192.168.1.10或reg.yourdomain.com。不要使用localhost或127.0.0.1作为主机名 - 外部客户端需要访问注册表服务
这里修改为我们的主机ip即可 例如修改为 192.168.135.130
data_volume: 存储 harbor 数据的位置。 这里可以修改 为 /data/harbor_data
配置http时存在如下注释,所以我们将https全部注释掉即可,这样来采用http
http:
# port for http, default is 80. If https enabled, this port will redirect to https port
port:博主配置为8989
启动安装发现如下问题,docker版本不满足

删除旧版本:
rpm -qa | grep docker 如下:
docker-1.13.1-96.gitb2f74b2.el7.centos.x86_64
docker-client-1.13.1-96.gitb2f74b2.el7.centos.x86_64
docker-common-1.13.1-96.gitb2f74b2.el7.centos.x86_64
yum remove 上面三个安装软件。
安装新版本:curl -fsSL https://get.docker.com/ | sh


重新启动,再次进入/software/harbor/harbor命令: ./install.sh
发现空间补足,哎
今天yum update了一下,再次运行 ./install.sh

harbor安装成功
查看docker运行情况,harbor都运行起来了

我虚拟机的ip地址总是发生变化,为此,首先将虚拟机地址固定,参考https://blog.csdn.net/xukaijj/article/details/78855402
然后修改harbor.yml中的ip地址,重启harbor
# docker-compose down
# ./prepare
# docker-compose up –d

然后访问登录地址出现如下界面

采用初识密码登录:admin/Harbor12345

至此,harbor搭建完成
然后为了让docker能够登录,我们需要进行配置,创建文件/etc/docker/daemon.json。写入下面配置:
{ "insecure-registries":["192.168.1.104:8989"]
重启docker--- systemctl restart docker
docker login 192.168.1.104:8989
输入用户名密码然后如果报错的话,记得检查docker ps -a 下的harbor镜像是否存在启动异常的镜像,如果存在重新启动,以确保harbor完全正常
docker的私有化仓库harbor搭建的更多相关文章
- 企业级镜像仓库harbor搭建
企业级镜像仓库harbor搭建 一. Harbor概述 VMware公司最近开源了企业级Registry项目Harbor,其的目标是帮助用户迅速搭建一个企业级的Docker registry 服 ...
- Docker 企业级镜像仓库 Harbor 的搭建与维护
目录 一.什么是 Harbor 二.Harbor 安装 2.1.Harbor 安装环境 2.2.Harbor安装 2.3 配置HTTPS 三.Harbor 的使用 3.1.登录Harbor并使用 3. ...
- Docker: 企业级镜像仓库Harbor的使用
上一节,演示了Harbor的安装部署 这次我们来讲解 Harbor的使用. 我们需要了解到: 1. 如何推镜像到镜像仓库 2. 如何从镜像仓库拉取镜像 3. 如何运行从私有仓库拉取的镜像 # 查看 h ...
- Docker 私有镜像仓库的搭建及认证
DockerHub 为我们提供了很多官方镜像和个人上传的镜像,我们可以下载机构或个人提供的镜像,也可以上传我们自己的本地镜像,但缺点是: 由于网络的原因,从 DockerHub 下载和上传镜像速度可能 ...
- Kubernets二进制安装(5)之私有仓库harbor搭建
在IP地址为192.168.80.50,机器名为mfyxw50上搭建私有仓库harbor harbor下载地址: harbor下载连接地址:https://github.com/goharbor/ha ...
- docker的企业级仓库-harbor
Harbor 一.背景 Docker中要使用镜像,我们一般都会从本地.Docker Hub公共仓库或者其它第三方的公共仓库中下载镜像,但是出于安全和一些内外网的原因考虑,企业级上不会轻易使用.普通的D ...
- docker的私有仓库的搭建
author: headsen chen date:2018-06-30 23:14:16 服务端(私有仓库:centos7_64位),使用端:centos6_64位 1.仓库的搭建: 安装dock ...
- Docker私有镜像仓库Harbor
一.安装Harbor(离线安装包的方式安装) 1.解压离线包 2.进入harbor目录中编辑harbor.yml 3.安装docker-compose yum -y install docker-co ...
- Docker: 企业级镜像仓库Harbor部署(http)
Harbor离线安装包下载地址:https://github.com/goharbor/harbor Docker compose(安装harbor需要用到docker compose)下载地址:ht ...
随机推荐
- Could not initialize class net.sourceforge.tess4j.TessAPI 解决方法
java.lang.NoClassDefFoundError: Could not initialize classnet.sourceforge.tess4j.TessAPI 主要原因是在Windo ...
- 从csv文件里取数据作为请求参数,和把返回数据放到一个csv文件
本来想把登陆后的token放到数组里,下一个参数用,但是貌似不支持数组,暂时先这样用了,并不麻烦,还很方便. 1.添加线程组等必要的东东后,添加csv配置器 2.进行设置 说明:csv文件设置不能读取 ...
- iOS 开发之基于JWT的Token认证机制及解析
在移动端和服务端通信中,一般有两种认证方式:token 和 session. 1.session/cookie 认证机制: 在服务端创建一个Session对象,同时在客户端的浏览器端创建一个Cooki ...
- 兵贵神速!掌握这10个Python技巧,让你代码工作如鱼得水
主题 Python 1000个读者心中有1000个哈姆雷特,要问1000个程序员“什么才是最好的语言”,Java.Python.PHP.C++ 也都有自己的位置.但要问编程语言流行指数之王非,那真的非 ...
- GIT 协同开发
Git 是一个开源的分布式版本控制系统,用于敏捷高效的处理任何项目的版本问题.Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件.与cvs, ...
- 一类Log-Gamma积分的一般形式
\[\Large\int_{0}^{z}x^{t}\ln\Gamma \left ( 1+x \right )\mathrm{d}x~,~z>0\, ,\, t\in N^{*}\] \(\La ...
- Codeforces Round #618 (Div. 2)C. Anu Has a Function
Anu has created her own function ff : f(x,y)=(x|y)−y where || denotes the bitwise OR operation. For ...
- 通过python调用jenkins 常用api操作
# -*- coding: utf-8 -*- import jenkins class TestJenkins(object): def __new__(cls, *args, **kwargs): ...
- Codeforces Global Round 5E(构造,思维)
#define HAVE_STRUCT_TIMESPEC#include<bits/stdc++.h>using namespace std;int main(){ ios::sync_w ...
- 获取Linux系统运行情况信息
代码: #include <stdio.h> #include <unistd.h> /* usleep() */ #include <stdlib.h> #inc ...