Administrator
Published on 2022-03-04 / 60 Visits
0
0

K8S搭建03-Harbor镜像管理与安装使用

※1、资源释放,清理机器硬盘空间

#请根据网页端删除部分不使用的镜像,该删除只是标记该镜像会进入清理的名单,并未实际清理,需要清理镜像则使用如下命令
#进入harbor机器使用如下命令,此清理过后会完全移除,请核对完镜像在进行清理
cd /root/harbor && docker-compose stop
docker run -it --name gc --rm --volumes-from registry vmware/registry:2.6.2-photon garbage-collect --dry-run /etc/registry/config.yml      (预览清理的镜像资源)
docker run -it --name gc --rm --volumes-from registry vmware/registry:2.6.2-photon garbage-collect  /etc/registry/config.yml     (直接清理不需要的镜像)
docker-compose start   启动

※2、Harbor服务搭建

#如下为搭建的步骤:
 
#机器初始化
systemctl stop firewalld      (生产环境请开放需要的端口)systemctl disable firewalld  (生产环境请开放需要的端口)
setenforce 0
sed -i 's/^SELINUX=.*/SELINUX=disabled/' /etc/selinux/config
swapoff -a                         #关闭swap交换分区
sed -i '/ swap / s/^\(.*\)$/#\1/g' /etc/fstab      #禁止swap交换分区开机自启
hostname harbor         #更改主机名字
bash                    #刷新当前环境变量
 
#内核调整,将桥接的IPv4流量传递到iptables的链
cat > /etc/sysctl.d/k8s.conf << EOF
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
sysctl --system                        #使上一条命令的配置生效
yum install -y ntpdate                  #安装ntpdate用于校准时间,确保master和node时间同步
/usr/sbin/ntpdate -u 192.168.168.248 && hwclock -w           #校准时间
yum install wget -y


#搭建docker环境,吧harbor镜像统一集中在docker管理
 
#安装并启动Docker
#安装所需的包。yum-utils提供了yum-config-manager 效用,并device-mapper-persistent-data和lvm2由需要 devicemapper存储驱动程序
yum install -y yum-utils device-mapper-persistent-data lvm2
#设置稳定存储库
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
#安装Docker CE
yum install -y docker-ce docker-ce-cli containerd.io
#安装Docker-compose
yum install -y docker-compose
#下载指定版本的docker-compose
curl -L https://github.com/docker/compose/releases/download/1.13.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
#对二进制文件赋可执行权限
chmod +x /usr/local/bin/docker-compose
#测试下docker-compose是否安装成功
docker-compose --version    #出现如下图则安装成功

※3、Harbor服务搭建及启动

#从192.168.168.87服务器上路径为 /data/soft/ 抓取tar包名字为 harbor.v1.5.3.tar.gz 传输到指定的服务器
mkdir -p /root/harbor         #路径请选择好,本次搭建选择在root下的harbor ,保证只有root用户才可以访问到harbor
cd /root/harbor/
tar -zxf harbor.v1.5.3.tar.gz -C /root/harbor/
 
#解压后文件为
cd /root/harbor
[root@harbor harbor]# ls
common                    docker-compose.notary.yml  ha          harbor.v1.5.3.tar.gz  LICENSE  open_source_license
docker-compose.clair.yml  docker-compose.yml         harbor.cfg  install.sh            NOTICE   prepare


#配置文件harbor.cfg详解:
 
# hostname设置访问地址,可以使用ip、域名,不可以设置为127.0.0.1或localhost
hostname = 192.168.126.162
 
# 访问协议,默认是http,也可以设置https,如果设置https,则nginx ssl需要设置on
ui_url_protocol = http
 
# mysql数据库root用户默认密码root123,实际使用时修改下
db_password = 123456
 
max_job_workers = 3
 
customize_crt = on
 
ssl_cert = /data/cert/server.crt
ssl_cert_key = /data/cert/server.key
 
secretkey_path = /data
 
admiral_url = NA
# 邮件设置,发送重置密码邮件时使用
email_identity =
 
email_server = smtp.mydomain.com
email_server_port = 25
email_username = sample_admin@mydomain.com
email_password = abc
email_from = admin <sample_admin@mydomain.com>
email_ssl = false
 
# 启动Harbor后,管理员UI登录的密码,默认是Harbor12345
harbor_admin_password = 123456
 
# 认证方式,这里支持多种认证方式,如LADP、本次存储、数据库认证。默认是db_auth,mysql数据库认证
auth_mode = db_auth
 
# LDAP认证时配置项
ldap_url = ldaps://ldap.mydomain.com
#ldap_searchdn = uid=searchuser,ou=people,dc=mydomain,dc=com
#ldap_search_pwd = password
ldap_basedn = ou=people,dc=mydomain,dc=com
#ldap_filter = (objectClass=person)
ldap_uid = uid
ldap_scope = 3
ldap_timeout = 5
 
# 是否开启自注册
self_registration = on
 
# token有效时间,默认30分钟
token_expiration = 30
 
# 用户创建项目权限控制,默认是everyone(所有人),也可以设置为adminonly(只能管理员)
project_creation_restriction = everyone
 
verify_remote_cert = on
启动Harbor

修改完配置文件后,在的当前目录执行./install.sh,Harbor服务就会根据当期目录下的docker-compose.yml开始下载依赖的镜像,检测并按照顺序依次启动各个服务

[root@harbor harbor]# cd /root/harbor
[root@harbor harbor]# ./install.sh
出现如下图则安装完成


harbor仓库启停命令
 
停项目
cd /root/harbor && docker-compose stop
起项目命令
cd /root/harbor && docker-compose start
参考文献:

https://blog.csdn.net/qq_40378034/article/details/90752212    #harbor仓库搭建
 
https://blog.csdn.net/qq_14869093/article/details/85644194    #harbor 仓库完全清理方式

Comment