简单记录搭建Harbor私服仓库
一、本机环境
①系统镜像: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私服仓库的更多相关文章
- Centos7搭建Harbor私有仓库(二)
1 说明 前文Centos7搭建Harbor私有仓库(一)中成功搭建了Harbor,但,是以http方式搭建的,这里我们修改为https方式 以下基于镜像CentOS-7-x86_64-Minimal ...
- 使用registry搭建docker私服仓库
使用registry搭建docker私服仓库 一.拉取 registry镜像 二.根据镜像启动一个容器 1.创建一个数据卷 2.启动容器 三.随机访问一个私服的接口,看是否可以返回数据 四.推送一个镜 ...
- 【snaptype nexus】搭建maven私服仓库
搭建本地开发私库,旨在解决本地开始受限于网络环境的问题:具体的搭建步骤主要包含以下几个步骤: 1.私服服务器使用的是ubuntu,首先下载安装包(版本号:2.12),下载地址:http://www.s ...
- 搭建harbor私有仓库
2-1.项目说明 Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器,由VMware开源,其通过添加一些企业必需的功能特性,例如安全.标识和管理等,扩展了开源 Docke ...
- Centos7搭建Harbor私有仓库(一)
1 说明 前文Centos7搭建DockerRegistry介绍了DockerRegistry的搭建,但它没有UI页面,因此选择Harbor 以下基于镜像CentOS-7-x86_64-Minimal ...
- Docker-compose 搭建 Harbor私有仓库
一. 安装docker-compose 1. 下载docker-compose的最新版本 curl -L "https://github.com/docker/compose/release ...
- 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 ...
- Ubuntu18 安装搭建Harbor
1.安装docker-compose1.下载docker-compose的最新版本 sudo curl -L "https://github.com/docker/compose/relea ...
随机推荐
- SpringMVC-简单参数绑定
SpringMVC-简单参数绑定 众所周知,springmvc是用来处理页面的一些请求,然后将数据再通过视图返回给用户的,前面的几篇博文中使用的都是静态数据,为了能快速入门springmvc,在 ...
- 小总结:fibonacci数的产生
我写的一个固定的函数来嘞: ]={,}; void f() { ;i<;i++) { fib[i]=fib[i-]+fib[i-]; } } 1,1,2,3,5,8,13,21,34,55,.. ...
- python实现进度条下载
核心代码: for i in range(10): print('\r' + '>' * i, end='') 示例展示以搜狗输入法为例: import timeimport requestsi ...
- 关于EasyUI DataGrid行编辑时嵌入时间控件
本人做一个名为“安徽中控”项目时,为快速开发基础数据增删改模块,遂采用EasyUIDatagrid将所有增删改查的操作都集中于表格中,并且所有增删改查操作都集中于泛型对象,从而不必为每个表写具体的增删 ...
- 意外发现--http-server使用
http-server 在很多情况下,需要在本地开启http服务器来测试.所以就需要一个简单的省事好用的http服务器.以前的时候,都是使用php的本地环境,但是,自从学了nodejs,发现了http ...
- range()用法
来源:http://www.cnblogs.com/wangwp/p/4535299.html 例子:http://www.cnblogs.com/hongten/p/hongten_python_r ...
- SQL With As的用法
WITH AS,也叫子查询部分(subquery factoring),可以定义一个SQL片断,该SQL片断会被整个SQL语句用到.可以使SQL语句的可读性更高,也可以在UNION ALL的不同部分, ...
- ORA-01789: query block has incorrect number of result columns
问题描述 ORA-01789: query block has incorrect number of result columns 原因如下 查询使用了union或者union all的时候查询上下 ...
- pybind11简介
python调用C/C++有不少的方法,如boost.python, swig, ctypes, pybind11等,这些方法有繁有简,而pybind11的优点是对C++ 11支持很好,API比较简单 ...
- c数据结构 -- 线性表之 复杂的链式存储结构
复杂的链式存储结构 循环链表 定义:是一种头尾相接的链表(即表中最后一个结点的指针域指向头结点,整个链表形成一个环) 优点:从表中任一节点出发均可找到表中其他结点 注意:涉及遍历操作时,终止条件是判断 ...