关键词:
文章目录
利用阿里云ECS部署自己的私有harbor镜像仓库
harbor简介
- 虽然Docker官方提供了公共的镜像仓库,但是从安全和效率等方面考虑,部署我们私有环境内的Registry也是非常必要的。
- Harbor是由VMware公司开源的企业级的Docker Registry管理项目,相比docker官方拥有更丰富的权限权利和完善的架构设计,适用大规模docker集群部署提供仓库服务。
- 它主要提供 Dcoker Registry 管理界面UI,可基于角色访问控制,镜像复制, AD/LDAP 集成,日志审核等功能,完全的支持中文。
harbor的部署
安装依赖
harbor是依赖于docker和docker-compose的,所以先安装它俩
阿里云180端口放行
安装docker
# epel源
[root@iZuf6g4e6vhdv58sz2z1klZ ~]# yum install epel-release -y
Repository epel is listed more than once in the configuration
Last metadata expiration check: 2:47:33 ago on Wed 16 Jun 2021 03:07:22 PM CST.
Package epel-release-8-10.el8.noarch is already installed.
Dependencies resolved.
Nothing to do.
Complete!
# 安装docker
[root@iZuf6g4e6vhdv58sz2z1klZ ~]# yum install -y yum-utils
[root@iZuf6g4e6vhdv58sz2z1klZ ~]# yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
[root@iZuf6g4e6vhdv58sz2z1klZ ~]# yum list docker-ce --showduplicate
Repository epel is listed more than once in the configuration
Docker CE Stable - x86_64 78 kB/s | 14 kB 00:00
Available Packages
docker-ce.x86_64 3:19.03.13-3.el8 docker-ce-stable
docker-ce.x86_64 3:19.03.14-3.el8 docker-ce-stable
docker-ce.x86_64 3:19.03.15-3.el8 docker-ce-stable
docker-ce.x86_64 3:20.10.0-3.el8 docker-ce-stable
docker-ce.x86_64 3:20.10.1-3.el8 docker-ce-stable
docker-ce.x86_64 3:20.10.2-3.el8 docker-ce-stable
docker-ce.x86_64 3:20.10.3-3.el8 docker-ce-stable
docker-ce.x86_64 3:20.10.4-3.el8 docker-ce-stable
docker-ce.x86_64 3:20.10.5-3.el8 docker-ce-stable
docker-ce.x86_64 3:20.10.6-3.el8 docker-ce-stable
docker-ce.x86_64 3:20.10.7-3.el8 docker-ce-stable
[root@iZuf6g4e6vhdv58sz2z1klZ ~]# yum install docker-ce -y
# 开机自启动
[root@iZuf6g4e6vhdv58sz2z1klZ ~]# systemctl enable docker
Created symlink /etc/systemd/system/multi-user.target.wants/docker.service → /usr/lib/systemd/system/docker.service.
# 启动docker
[root@iZuf6g4e6vhdv58sz2z1klZ ~]# systemctl start docker
# 配置
[root@iZuf6g4e6vhdv58sz2z1klZ ~]#vi /etc/docker/daemon.json
"graph": "/mydata/docker",
"storage-driver": "overlay2",
"insecure-registries": ["registry.access.redhat.com", "quay.io", "harbor.liboer.top"], # 在此处让你的域名受信任,如果你配了ssl证书可以不用写
"registry-mirrors": ["https://q2gr04ke.mirror.aliyuncs.com/"],
"bip": "172.17.0.1/24",
"exec-opts": ["native.cgroupdriver=systemd"],
"live-restore":true
# 启动docker
[root@iZuf6g4e6vhdv58sz2z1klZ ~]# systemctl daemon-reload
[root@iZuf6g4e6vhdv58sz2z1klZ ~]# systemctl restart docker
# 查看版本
docker --version
安装docker-compose
[root@aliyun ~]# curl -L https://github.com/docker/compose/releases/download/1.25.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 633 100 633 0 0 1128 0 --:--:-- --:--:-- --:--:-- 1128
100 16.2M 100 16.2M 0 0 749k 0 0:00:22 0:00:22 --:--:-- 3145k
[root@aliyun ~]# chmod +x /usr/local/bin/docker-compose
[root@aliyun ~]# docker-compose --version
docker-compose version 1.25.0, build 0a186604
安装harbor
[root@hdss12-200 ~]# cd /opt
[root@hdss12-200 opt]# mkdir src
[root@hdss12-200 opt]# cd src
[root@hdss12-200 src]# wget https://github.com/goharbor/harbor/releases/download/v1.9.4/harbor-offline-installer-v1.9.4.tgz
[root@hdss12-200 src]# ls
harbor-offline-installer-v1.9.4.tgz
[root@hdss12-200 src]# tar xf harbor-offline-installer-v1.9.4.tgz -C /opt/
[root@hdss12-200 src]# cd /opt/
[root@hdss12-200 opt]# ll
total 0
drwxr-xr-x. 2 root root 71 Jun 19 02:20 certs
drwx--x--x. 4 root root 28 Jun 19 02:50 containerd
drwxr-xr-x 2 root root 100 Jun 19 04:26 harbor
drwxr-xr-x 2 root root 49 Jun 19 04:07 src
[root@hdss12-200 opt]# mv harbor /opt/harbor-v1.9.4
# 软连接
[root@hdss12-200 opt]# ln -s /opt/harbor-v1.9.4 /opt/harbor
[root@hdss12-200 opt]# ll
total 0
drwxr-xr-x. 2 root root 71 Jun 19 02:20 certs
drwx--x--x. 4 root root 28 Jun 19 02:50 containerd
lrwxrwxrwx 1 root root 18 Jun 19 04:27 harbor -> /opt/harbor-v1.9.4
drwxr-xr-x 2 root root 100 Jun 19 04:26 harbor-v1.9.4
drwxr-xr-x 2 root root 49 Jun 19 04:07 src
[root@hdss12-200 opt]# vim /opt/harbor/harbor.yml
hostname: harbor.liboer.top
http:
port: 180
data_volume: /mydata/harbor
location: /mydata/harbor/logs
[root@hdss12-200 ~]# mkdir -p /mydata/harbor /mydata/harbor/logs
[root@hdss12-200 ~]# cd /opt/harbor/
[root@hdss12-200 ~]# systemctl restart docker
[root@hdss12-200 harbor]# ./install.sh
[root@hdss12-200 harbor]# docker ps -a
[root@hdss12-200 harbor]# yum install nginx -y
# 在nginx上添加一个server
server
listen 80;
server_name harbor.liboer.top;
client_max_body_size 1000m;
location /
proxy_pass http://127.0.0.1:180;
harbor的一些镜像
[root@aliyun harbor-v1.9.4]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
0e86a8db6253 goharbor/nginx-photon:v1.9.4 "nginx -g 'daemon of…" 13 minutes ago Up 13 minutes (healthy) 0.0.0.0:180->8080/tcp, :::180->8080/tcp nginx
f5a364606d76 goharbor/harbor-jobservice:v1.9.4 "/harbor/harbor_jobs…" 13 minutes ago Up 13 minutes (healthy) harbor-jobservice
972a7a00ffcf goharbor/harbor-core:v1.9.4 "/harbor/harbor_core" 13 minutes ago Up 13 minutes (healthy) harbor-core
d6d338f6ebd7 goharbor/registry-photon:v2.7.1-patch-2819-2553-v1.9.4 "/entrypoint.sh /etc…" 13 minutes ago Up 13 minutes (healthy) 5000/tcp registry
db6f600d19d5 goharbor/harbor-registryctl:v1.9.4 "/harbor/start.sh" 13 minutes ago Up 13 minutes (healthy) registryctl
467f4455614a goharbor/harbor-db:v1.9.4 "/docker-entrypoint.…" 13 minutes ago Up 13 minutes (healthy) 5432/tcp harbor-db
e7bd7b41ca61 goharbor/harbor-portal:v1.9.4 "nginx -g 'daemon of…" 13 minutes ago Up 13 minutes (healthy) 8080/tcp harbor-portal
02456f6a16ca goharbor/redis-photon:v1.9.4 "redis-server /etc/r…" 13 minutes ago Up 13 minutes (healthy) 6379/tcp redis
97075c4f04a7 goharbor/harbor-log:v1.9.4 "/bin/sh -c /usr/loc…" 13 minutes ago Up 13 minutes (healthy) 127.0.0.1:1514->10514/tcp harbor-log
浏览器访问
http://harbor.liboer.top
用户名:admin
密码:/opt/harbor/harbor.yml中你修改的密码
即可登入
向harbor推送nginx镜像
新建一个公共仓库public,然后像public推送镜像
~]# docker pull nginx:1.7.9
~]# docker tag nginx:1.7.9 harbor.liboer.top/public/nginx:v1.7.9
~]# docker login harbor.liboer.top
~]# docker push harbor.liboer.top/public/nginx:v1.7.9
此时查看你的harbor仓库,已经推送过来
docker仓库使用+harbor私有仓库部署(代码片段)
...可以我们可以使用国内的 Daocloud 镜像仓库和开通阿里云仓库 或者 Harbor 如果是企业内部也可以使用自己搭建的私有仓库docker-registry使用介绍:Registry用于保存docker镜像,包括镜像的层次结构和元数据#第一步:p... 查看详情
利用harbor搭建企业级私有镜像仓库(文末赠书)(代码片段)
利用Harbor搭建企业级私有镜像仓库(文末赠书)收录于话题#Docker专辑9个「点击图片获取最近两年爆款好文」背景docker中要使用镜像,一般会从本地、dockerHup公共仓库和其它第三方公共仓库中下载镜像,一般出于安全和外网(墙)... 查看详情
docker--harbor私有仓库(代码片段)
Docker--Harbor私有仓库Docker--Harbor私有仓库Harbor很重要阿里云的镜像仓库必须掌握#一.//查看Docker-Compose版本判断安装是否是成功chmod+xdocker-composecpdocker-compose/usr/local/bin/docker-compose-v"由于Harbor镜像仓库的镜像管理要用到compose所以compose... 查看详情
搭建本地docker私有仓库与harbor私有仓库的部署与管理(代码片段)
...ockerHarbor简介2.1什么是Harbor?2.2Harbor的特性2.3Harbor的构成2.4部署Harbor服务前言Docker三要素:镜像,容器,仓库。仓库分为共有仓库和私有仓库:公有仓库就是DokcerHub。外网,受网络影响大。私有仓库就是搭建在... 查看详情
k8s部署harbor仓库实战
...镜像管理,虽然Docker官方也提供了公共的镜像仓库,包括阿里云、腾讯云等都有镜像仓库,但是总是有各自的限制,出于安全和效率等方面考虑,部署私有环境内的Registry也是非常必要的。Harbor是由VMware公司开源的企业级的DockerR... 查看详情
11.部署harbor私有仓库(代码片段)
11.部署harbor私有仓库本文档介绍使用docker-compose部署harbor私有仓库的步骤,你也可以使用docker官方的registry镜像部署私有仓库(部署DockerRegistry)。使用的变量本文档用到的变量定义如下:$exportNODE_IP=10.64.3.7#当前部署harbor的节点IP$下... 查看详情
docker企业级私有仓库——harbor介绍和部署(代码片段)
Docker企业级私有仓库——Harbor介绍和部署前言?docker容器应用及开发和运行离不开可靠的镜像管理,在前面的文章我们提到了我们在拉取镜像的时候使用的是docker官方提供的公共镜像仓库,但是无论从安全还是效率等其他方面考... 查看详情
「开源摘星计划」优麒麟系统(国产)部署harbor私有镜像仓库服务(代码片段)
...环境描述 随着国产化浪潮的兴起,企业都逐步将服务部署在国产的操作系统上。 本篇文章则在优麒麟20.04操作系统上部署Harbor2.6.0私有镜像仓库服务,其它版本的Harbor亦可参考本文档。关于优麒麟的详细信息可查看:https... 查看详情
docker学习笔记——镜像仓库制作(公有+私有+harbor)(代码片段)
...ckerhup镜像上传、下载1)镜像上传2)镜像下载3.镜像加速器1)阿里云加速器二、docker本地容器镜像仓库1.使用registry容器镜像实现本地非安全镜像仓库1)下载registry容器镜像2)创建用于挂载至registry镜像启动的仓库中,便于容器镜像... 查看详情
docker学习笔记——镜像仓库制作(公有+私有+harbor)(代码片段)
...ckerhup镜像上传、下载1)镜像上传2)镜像下载3.镜像加速器1)阿里云加速器二、docker本地容器镜像仓库1.使用registry容器镜像实现本地非安全镜像仓库1)下载registry容器镜像2)创建用于挂载至registry镜像启动的仓库中,便于容器镜像... 查看详情
[cka备考实验][ingress-nginx]4.1如何优雅部署自己的ingress-nginx环境
...的代价我给出的折中方案就是在各大云商平台(例如阿里云)租用一台临时的云服务器,该服务器归属地必须在大陆以外(例如香港),租用方法选择“按用量付费” 查看详情
docker进阶-搭建私有企业级镜像仓库harbor(代码片段)
...理公共镜像。既然官方提供了镜像仓库我们为什么还要去自己搭建私有仓库呢?虽然也可以托管私有镜像。我们可以非常方便的把我们自己镜像推送上去,但是Dockerhub提供的私有仓库个数有限。对于个人来说Dockerhub是个不错的选... 查看详情
docker私有仓库部署和管理(代码片段)
Docker私有仓库部署和管理本章结构:Harbor介绍部署Harbor所依赖的DockerCompose服务部署Harbor服务Harbor日常操作管理Harbor管理生命周期Harbor介绍Harbor是VMware公司开源的企业级DockerRegistry项目Harbor的优势基于角色控制基于镜像的复制策略... 查看详情
docker-harbor私有仓库的部署与管理
...是以Docker容器的形式构建的,使用docker-compose来对它进行部署。用于部署Harbor的docker-compose模板位于harbor/docker-compose.yml2、Harbor的特性1.基于角色控制:用户和仓库都是基于项目进行组织的,而用户在项目中可以拥有不同的权限2.基... 查看详情
私有仓库harbor的搭建(代码片段)
...提供了公共的镜像仓库,但是从安全和效率等方面考虑,部署我们私有环境内的Registry也是非常必要的。Harbor是由VMware公司开源的企业级的DockerRegistry管理项目,相比docker官方拥有更丰富的权限权利和完善的架构设计,适用大规... 查看详情
docker——harbor私有仓库部署与管理(代码片段)
...构二、Harbor构建Docker私有仓库1、环境配置2、案例需求3、部署docker-compose服务4、部署harbor服务5、启动harbor①访问②添加项目并填写项目名称③通过127.0.0.1来登陆和推送镜像④维护管理Harbor⑤创建Harbor用户⑤移除Harbor服务容器同... 查看详情
docker容器——harbor私有仓库部署与管理(代码片段)
Docker容器——harbor私有仓库部署与管理Harbor简介1、什么是Harbor?2、Harbor的特性3、Harbor的构成二、Harbor部署1.部署Docker-Compose服务2.部署Harbor服务(1)下载或上传Harbor安装程序(2)修改harbor安装的配置文件3.启动Harbor6.使用Docker命令... 查看详情
docker容器——harbor私有仓库部署与管理(代码片段)
Docker容器——harbor私有仓库部署与管理Harbor简介1、什么是Harbor?2、Harbor的特性3、Harbor的构成二、Harbor部署1.部署Docker-Compose服务2.部署Harbor服务(1)下载或上传Harbor安装程序(2)修改harbor安装的配置文件3.启动Harbor6.使用Docker命令... 查看详情