一、本机环境

  ①系统镜像:CentOS7

  ②Docker:Docker version 19.03.5

  ③Docker-compose:docker-compose

二、Docker安装

  参考官网安装即可:https://docs.docker.com/install/linux/docker-ce/centos/

1、卸载旧版本

$ sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine

2、安装依赖包

sudo yum install -y yum-utils \
device-mapper-persistent-data \
lvm2

3、配置仓库

sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo

4、安装社区版Docker

 sudo yum install docker-ce docker-ce-cli containerd.io

5、启动docker

sudo systemctl start docker

6、运行hello-world

sudo docker run hello-world

三、Docker Compose安装

  参考官网安装:https://docs.docker.com/compose/install/

1、下载compose

sudo curl -L "https://github.com/docker/compose/releases/download/1.25.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

2、授权

sudo chmod +x /usr/local/bin/docker-compose

3、查看docker-compose版本号

docker-compose -version

4、出现以下截图说明安装成功

以上安装较慢,以下方式也可行:

①cd /usr/local/bin/

②wget https://github.com/docker/compose/releases/download/1.14.0-rc2/docker-compose-Linux-x86_64

③rename docker-compose-Linux-x86_64 docker-compose docker-compose-Linux-x86_64

④chmod +x /usr/local/bin/docker-compose

⑤docker-compose -version

四、Harbor安装

  官方GIthub地址:https://github.com/goharbor/harbor/releases(分为离线安装、在线安装,我这里采用离线安装)

1、下载Harbor并上传至服务器

 

2、解压

tar -zxvf harbor-offline-installer-v1.2.0.tgz

3、移动至/usr/local目录

mv harbor /usr/local/

4、创建https证书以及配置相关目录权限

①创建2048位证书密码

openssl genrsa -des3 -out server.key 

②创建证书请求

openssl req -new -key server.key -out server.csr

③备份证书

cp server.key server.key.org

④退秘钥(防止nginx启动报错)

openssl rsa -in server.key.org -out server.key

⑤创建证书

openssl x509 -req -days  -in server.csr -signkey server.key -out server.crt

⑥创建目录并拷贝证书

mkdir -p /data/cert
mv server.* /data/cert/

⑦授权

chmod -R  /data/cert

5、进入harbor目录

①cd /usr/local

②修改harbor配置文件:vim harbor.cfg(24行、25行有证书相关配置)

③执行安装脚本:./install.sh,静静等等安装即可。

④docker ps -a查看

核心组件:

  ①Proxy:nginx前端代理,代理Harbor的registry,UI,Token等服务

  ②jobservice:负责镜像复制

  ③ui:提供图形化界面

  ④db:负责存储用户权限、审计日志等数据

  ⑤adminserver:jobservice和ui启动时候需要加载其中的配置

  ⑥registry:镜像仓库(Docker官方)

  ⑦log:负责收集其他组件的log

⑤修改本地hosts文件解析域名(C:\Windows\System32\drivers\etc\hosts)

⑥浏览器访问:https://hub.rmitec.com/

⑦登录系统,用户名:admin,密码:Harbor12345

⑧创建一个用户:zs,并使用zs用户创建一个私有项目(创建用户过程略)

⑨在此可以查看到镜像推送命令提示

注:此时是无法通过该命令推送的,原因是这个仓库是属于zs用户,不做认证是无法推送镜像的。

10、上传镜像进行上传测试

10.1指定镜像仓库地址
vim/etc/docker/daemon.json

添加以下内容:

{"insecure-registries": ["serverip"] }

同样记得修改本地hosts文件映射(当然上一步可以直接配置IP)

10.2 重启docker--systemctl restart docker
10.3下载测试镜像:docker pull tomcat
10.4给镜像重新打标签:docker tag tomcat hub.rmitec.com/system01/tomcat:v1.0
10.5推送镜像至私有仓库

10.6登陆私服,再次推送成功

10.7通过管理页面查看,镜像已经推送成功

11、客户端测试(另一台机器)

11.1 指定仓库地址:vim /etc/docker/daemon.json

配置本地hosts文件

11.2重启docker:systemctl restart docker
11.3拉取镜像:docker pull hub.rmitec.com/system01/tomcat:v1.0

拉取失败,这里需要身份认证

11.4登陆用户认证,再次拉取镜像

11.5运行从Harbor拉取的tomcat镜像:docker run --name tomcat -p 80:8080 -d 6408fdc94212

11.6浏览器访问:http://192.168.66.21/,可以看到通过拉取的tomcat:v1.0镜像运行的容器成功。ps:久违的三只脚猫咪~~~

   至此已经搭建完成Harbor私服,如有不正,欢迎指正!欢迎留言讨论问题,说不定你正在走的坑就是我走过的坑。哈哈~~~~

简单记录搭建Harbor私服仓库的更多相关文章

  1. Centos7搭建Harbor私有仓库(二)

    1 说明 前文Centos7搭建Harbor私有仓库(一)中成功搭建了Harbor,但,是以http方式搭建的,这里我们修改为https方式 以下基于镜像CentOS-7-x86_64-Minimal ...

  2. 使用registry搭建docker私服仓库

    使用registry搭建docker私服仓库 一.拉取 registry镜像 二.根据镜像启动一个容器 1.创建一个数据卷 2.启动容器 三.随机访问一个私服的接口,看是否可以返回数据 四.推送一个镜 ...

  3. 【snaptype nexus】搭建maven私服仓库

    搭建本地开发私库,旨在解决本地开始受限于网络环境的问题:具体的搭建步骤主要包含以下几个步骤: 1.私服服务器使用的是ubuntu,首先下载安装包(版本号:2.12),下载地址:http://www.s ...

  4. 搭建harbor私有仓库

    2-1.项目说明  Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器,由VMware开源,其通过添加一些企业必需的功能特性,例如安全.标识和管理等,扩展了开源 Docke ...

  5. Centos7搭建Harbor私有仓库(一)

    1 说明 前文Centos7搭建DockerRegistry介绍了DockerRegistry的搭建,但它没有UI页面,因此选择Harbor 以下基于镜像CentOS-7-x86_64-Minimal ...

  6. Docker-compose 搭建 Harbor私有仓库

    一. 安装docker-compose 1. 下载docker-compose的最新版本 curl -L "https://github.com/docker/compose/release ...

  7. Docker以http访问Harbor私有仓库(一)

    1 说明 前文Centos7搭建Harbor私有仓库(一)我们成功搭建Harbor,本篇我们主要配置Docker以http方式访问私有仓库 2 Docker配置 2.1 Mac系统 2.1.1 配置D ...

  8. Docker以https访问Harbor私有仓库(二)

    1 说明 前文Centos7搭建Harbor私有仓库(二)中,我们以https方式搭建了Harbor,本篇我们主要配置Docker以https方式访问Harbor私有仓库 2 Docker配置 2.1 ...

  9. Ubuntu18 安装搭建Harbor

    1.安装docker-compose1.下载docker-compose的最新版本 sudo curl -L "https://github.com/docker/compose/relea ...

随机推荐

  1. arm-linux-gcc

    搭建交叉编译环境,即安装.配置交叉编译工具链.在Ubuntu环境下编译出嵌入式Linux系统所需的操作系统.应用程序等,然后再上传到目标机上. 交叉编译工具链是为了编译.链接.处理和调试跨平台体系结构 ...

  2. python:复制文件及文件夹

    #!/usr/bin/python# -*- coding:utf-8 -*- import shutil #shutil.copy(文件1,文件2)#将源内容复制到目标文件中.d.txt不存在则创建 ...

  3. mysql 查询——逻辑查询

    --去重查询 distinct select distinct gander from student; --逻辑查询 and or not --查询18-28之间的数据 select *from s ...

  4. POJ3258 River Hopscotch(二分最大化最小值)

    题目链接:http://poj.org/problem?id=3258 题意:给n个石头,起点和终点也是两个石头,去掉这石头中的m个,使得石头间距的最小值最大. 思路:二分石头间的最短距离,每次贪心地 ...

  5. .NET知识梳理——3.面向对象

    1. 面向对象 1.1        封装.继承.多态理解 1.1.1  封装 封装就是将抽象得到的数据和行为(或功能)相结合,形成一个有机的整体,也就是将数据与操作数据的源代码进行有机的结合,形成“ ...

  6. 常用的 19 条 MySQL 优化

    一.EXPLAIN 做MySQL优化,我们要善用 EXPLAIN 查看SQL执行计划. 下面来个简单的示例,标注(1,2,3,4,5)我们要重点关注的数据 type列,连接类型.一个好的sql语句至少 ...

  7. 小白学 Python 爬虫(24):2019 豆瓣电影排行

    人生苦短,我用 Python 前文传送门: 小白学 Python 爬虫(1):开篇 小白学 Python 爬虫(2):前置准备(一)基本类库的安装 小白学 Python 爬虫(3):前置准备(二)Li ...

  8. STL初探

    关于STL的一些东西 感言: 学C++不学STL函数库的人可能都是... 有点问题 头文件<algorithm>的一些东西 sort,快排: 这是个初学者必需掌握的东西,及其好用,因为方( ...

  9. PLL

    PLL(Phase Locked Loop): 为锁相回路或锁相环,用来统一整合时脉讯号,使内存能正确的存取资料.PLL用于振荡器中的反馈技术. 许多电子设备要正常工作,通常需要外部的输入信号与内部的 ...

  10. 第三十五篇 入门机器学习——Juptyer Notebook中的常用快捷键

        1.运行当前Cell:Ctrl + Enter   2.运行当前Cell并在其下方插入一个新的Cell:Alt + Enter   3.运行当前Cell并选中其下方的Cell:Shift + ...