Harbor安装及简单使用

2023-11-03

在虚拟机初始化的基础上

安装Docker

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

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

systemctl enable docker && systemctl start docker

配置镜像下载加速器:

cat > /etc/docker/daemon.json << EOF

{

  "registry-mirrors": ["https://b9pmyelo.mirror.aliyuncs.com"],

  "insecure-registries": ["http://192.168.20.160:801"

}

EOF

systemctl restart docker

安装Docker-compose(需要挂加速器)

[root@harbor ~]# wget -c  https://github.com/docker/compose/releases/download/1.25.5/docker-compose-Linux-x86_64

[root@harbor ~]# mv docker-compose-Linux-x86_64  /usr/bin/docker-compose

[root@harbor ~]# chmod  a+x /usr/bin/docker-compose

[root@harbor ~]# docker-compose  --version

docker-compose version 1.25.5, build 8a1c60f6

下载harbor离线安装包并解压

[root@harbor ~]# wget -c https://github.com/goharbor/harbor/releases/download/v2.0.0/harbor-offline-installer-v2.0.0.tgz

[root@harbor ~]# tar -xf harbor-offline-installer-v2.0.0.tgz

 cd harbor

 cp harbor.yml.tmpl  harbor.yml

# mkdir -p /opt/application/harbor     //用于存放harbor的持久化数据

harbor.yml配置文件主要修改参数如下:

5 hostname: 192.168.20.160

#//设置访问地址,可以使用ip、域名,不可以设置为127.0.0.1或localhost。默认情况下,harbor使用的端口是80,若使用自定义的端口,除了要改docker-compose.yml文件中的配置外,这里的hostname也要加上自定义的端口,否则在docker login、push时会报错

10   port: 801

34 harbor_admin_password: yuguoli12345

#https配置(如不需要可不配置,注释掉)

 12 # https related config

 13 #https:

 14   # https port for harbor, default is 443

 15  # port: 443

 16   # The path of cert and key files for nginx

 17   #certificate: /your/certificate/path

 18   #private_key: /your/private/key/path

29   # external_url: https://reg.mydomain.com:8433

# //如果要启用外部代理,比如外层的NGINX、LB等,请取消注释external_url,当它启用时,hostname将不再使用。

34 harbor_admin_password: admin密码

#//admin密码

#数据库配置

 37 database:

 38   # The password for the root user of Harbor DB. Change this before any produ    ction use.

 39   password: root123

 40   # The maximum number of connections in the idle connection pool. If it <=0,     no idle connections are retained.

 41   max_idle_conns: 50

 42   # The maximum number of open connections to the database. If it <= 0, then     there is no limit on the number of open connections.

 43   # Note: the default number of connections is 100 for postgres.

 44   max_open_conns: 100

#持久化数据目录

47 data_volume: /opt/application/harbor

创建 https 证书

# 创建证书目录,并赋予权限

[root@harbor ~]# mkdir  /https/ca  -p

[root@harbor ~]# chmod  -R 777 /https/ca/

[root@harbor ~]# cd /https/ca/

# 生成私钥,需要设置密码:1234

[root@harbor ca]# openssl genrsa -des3 -out harbor.key 2048

Generating RSA private key, 2048 bit long modulus

.........+++

..................................+++

e is 65537 (0x10001)

Enter pass phrase for harbor.key:1234

Verifying - Enter pass phrase for harbor.key:1234

# 生成CA证书,需要输入密码1234

[root@harbor ca]# openssl req -sha512 -new \

>     -subj "/C=CN/ST=JS/L=WX/O=zwx/OU=jhmy/CN=10.0.0.28" \

>     -key harbor.key \

>     -out harbor.csr

Enter pass phrase for harbor.key:1234

# 备份证书

[root@harbor ca]# cp harbor.key  harbor.key.org

# 退掉私钥密码,以便docker访问(也可以参考官方进行双向认证)

[root@harbor ca]# openssl rsa -in harbor.key.org -out harbor.key

Enter pass phrase for harbor.key.org:1234

writing RSA key

# 使用证书进行签名

[root@harbor ca]# openssl x509 -req -days 100000  -in harbor.csr -signkey harbor.key -out harbor.crt

Signature ok

subject=/C=CN/ST=JS/L=WX/O=zwx/OU=jhmy/CN=10.0.0.28

Getting Private key

[root@harbor ~]# cd  harbor/

[root@harbor harbor]# vim  harbor.yml

https:

  # https port for harbor, default is 443

  port: 443

  # The path of cert and key files for nginx

  certificate: /https/ca/harbor.crt

  private_key: /https/ca/harbor.key

安装并启动Harbor

安装之前需要启动docker,然后执行安装脚本:

--with-clair参数是启用漏洞扫描功能

[root@harbor harbor]# ./root/harbor/install.sh  --with-clair

 浏览器访问 

http://IP:801

 

先创建用户

创建项目

给项目加入用户,设置角色

 查看推送命令

 

# 给镜像打上标签

- 镜像仓库地址/项目名称/标签信息

docker tag nginx:1.16 IP:801/user001/nginx:1.16.1

服务器主机要对镜像进行操作必须先登录!!!

# 登录仓库

docker login http://IP:801

#退出登录

docker logout https://IP:801

推送镜像

docker push IP:801/user001/nginx:1.16.1

拉取镜像

docker pull IP:801/user001/nginx:1.16.1

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Harbor安装及简单使用 的相关文章

随机推荐

  • 蓝桥杯:外卖店优先级(map排序算法) Java

    分析 发现只是输入两种数据 则可以考虑用map 经过分析发现 可以用店家编号来表示map的第一个参数Integer 第二个参数因为有可能有多个相同的时刻 所以用arraylist
  • 一, SpringCloud Alibaba-nacos注册中心

    1 nacos官网 https nacos io zh cn https nacos io zh cn docs what is nacos html https github com alibaba spring cloud alibab
  • c++拷贝与引用讲解

    目录 拷贝与引用 2 const限定符 3 const与指针 拷贝与引用 1 拷贝 即复制 在初始化变量时 初始值会被拷贝到新建的对象中 对象会开辟一块新的内存空间用来存储该变量 int a 10 int b a std cout lt l
  • 广播到底啥啊,arp广播原理

    1网络广播 网络广播是指一个节点同时向相同域中的其它所有节点传输数据包的过程 例如 有4台主机 分别为1号主机 2号主机 3号主机 4号主机 假如1号主机 要给4号主机发数据 如果是用广播传输方法的话 那么4台主机都会收到数据包 4台主机
  • ChatGpt 从入门到精通

    相关资源下载地址 基于ChatGPT的国际中文语法教学辅助应用的探讨 pdf 生成式人工智能技术对教育领域的影响 关于ChatGPT的专访 pdf 电子 从ChatGPT热议看大模型潜力 pdf 从图灵测试到ChatGPT 人机对话的里程碑
  • Python爬虫-使用Selenium模拟百度登录

    前言 前面我已经安装好了Selenium并模拟成功了一下打开百度页面并进行查询 让我这个python初学者信心倍增 今天再来试一试百度登录 正文 把打开百度的代码放到构造方法中 ps 那个文件目录是用于后面滑块验证图片保存的 def ini
  • linux最简单预览摄像头方法

    我只想要打开摄像头 想当然就是用ffplay centos如何安装ffplay 找了一通都是编译安装 编译安装也就算了 竟然没有生成ffplay 搜了一通解决ffmpeg编译安装没有生成ffplay的教程 累了 我到底在干什么 linux真
  • FatFs目录访问接口中文版

    我是阿荣 关注我 在技术路上一起精进 目录访问 f opendir 打开目录 函数原型 FRESULT f opendir DIR dp OUT Pointer to the directory object structure const
  • Vue-Axios的封装---登录注册---axios(二)

    Vue cli Axios的封装 简单的的登录与注册 第一种 逻辑数据未分离 注册 登录 用户页面获取用户数据信息以及注销 第二种 逻辑数据分离 token 封装Axios 为什么封装axios 实现 调用封装完毕的Axios 并在添加所需
  • vuforia sdk及案例 (第二章)

    有过上一章了现在去看下载部分 我事先下载好了 用的Android Q版本 开发软件版本是3 5 3的 然后我看了一去升级到了3 6 1 我是最新版本来做的 这是我下载的 导入工程案例 VuforiaSamples 8 6 10 出现问题一
  • IntelliJ IDEA开发工具的安装,scala插件安装

    IntelliJ IDEA开发工具安装 scala插件安装 1 IntelliJ IDEA开发工具下载 下载官方网址 https www jetbrains com idea download other html 我下的2021 3 2
  • Pytorch Advanced(一) Generative Adversarial Networks

    生成对抗神经网络GAN 发挥神经网络的想象力 可以说是十分厉害了 参考 1 AI作家 2 将模糊图变清晰 去雨 去雾 去抖动 去马赛克等 这需要AI具有 想象力 能脑补情节 3 进行数据增强 根据已有数据生成更多新数据供以feed 可以减缓
  • modulename: loading out-of-tree module taints kernel

    问题描述 使用insmod命令加载编写的驱动模块时 出现提示信息 loading out of tree module taints kernel 不过 模块还是能够被加载 并且卸载后再次加载时 该提示信息没有再次出现 然而整个系统重启后再
  • Linux编码修改

    1 查看当前系统默认采用的字符集 locale 2 查看系统当前编码 echo LANG 如果输出为 en US UTF 8 英文 zh CN UTF 8 中文 3 查看系统是否安装中文字符集 locale a grep zh 如果出现了
  • JS的深拷贝函数

    自定义深拷贝函数 引入的赋值 指向同一个对象 相互之间会影响 对象的浅拷贝 只是浅层的拷贝 内部引入对象时 依然会相互影响 对象的深拷贝 两个对象不再有任何关系 不会相互影响 function isObject value const va
  • flask 开发Restful API :post get

    命令行安装flask pip install flask 新建脚本api py from flask import Flask from flask import request import json app Flask name app
  • 使你的IT职业生涯更上一层楼de14条建议

    摘要 升值为企业IT部门的领导者 是大部分IT技术人员职业生涯的最终追求 但从一般大众中脱颖而出 并非易事 仅仅把本职工作干好远远不够 还需要IT技术人员展示出投身于技术发展的奉献精神及伴随技术发展而发展的能力 升值为企业IT部门的领导者
  • OpenGL坐标变换及其数学原理,两种摄像机交互模型(附源程序)

    OpenGL坐标变换及其数学原理 两种摄像机交互模型 附源程序 实验平台 win7 VS2010 先上结果截图 文章最后下载程序 解压后直接运行BIN文件夹下的EXE程序 a 鼠标拖拽旋转物体 类似于OGRE中的 OgreBites Cam
  • 频繁跳槽是职场走下坡路的开始,Java程序员注意:跳槽前,你该考虑5个问题

    本文转载自 频繁跳槽是职场走下坡路的开始 Java程序员注意 跳槽前 你该考虑5个问题 职场上 跳槽是所有职场人都会遇到的问题 关于职场跳槽的理由 笔者做了以下盘点 和直接领导的矛盾导致离职 逃避问题而离职 工作压力大 挣钱少而离职 总之
  • Harbor安装及简单使用

    在虚拟机初始化的基础上 安装Docker wget O etc yum repos d CentOS Base repo http mirrors aliyun com repo Centos 7 repo wget https mirro