harbor部署
1.安装docker环境
1)、确保 yum 包更新到最新
yum update
2)、安装需要的软件包
yum-util 提供yum -config-manager功能,另外两个是devicemapper驱动依赖的
yum install -y yum-utils device-mapper-persistent-data lvm2
3)、添加源,国内还是用阿里的源快一些,
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
4)、更新yum缓存
yum makecache fast
5)、开始安装Docker
yum -y install docker-ce
6)、启动docker
systemctl start docker
7)、设置开机启动
systemctl enable docker
8)、验证
docker ps
9)、修改daemon,并添加http的通信地址,不然docker默认使用https进行通信,如果配置了https协议就不需要添加
mkdir /etc/docker
# docker优化
# registry-mirrors 自定义的镜像地址
# 修改docker Cgroup Driver 为systemtd启动管理,是k8s需要,默认是cgroupfs
# max-concurrent-downloads: 最大并发下载
# max-concurrent-uploads: 最大并发上传
# log-driver: 日志格式化为 JSON。这是 Docker 默认的日志驱动程序。
# log-opts: 日志设置,单文件最大,最大几个文件
# 容器的日志都在 /var/lib/docker/containers/容器名/xxx.log
# live-restore: 在docker守护进程不可用时使容器保持活动状态
#
cat > /etc/docker/daemon.json <<'EOF'
{
"registry-mirrors": [
"https://nr240upq.mirror.aliyuncs.com",
"https://registry.docker-cn.com",
"https://docker.mirrors.ustc.edu.cn",
"https://dockerhub.azk8s.cn",
"http://hub-mirror.c.163.com"
],
"max-concurrent-downloads": 10,
"max-concurrent-uploads": 5,
"log-driver": "json-file",
"log-opts": {
"max-size": "300m",
"max-file": "2"
},
"live-restore": true
}
EOF
10)、安装docker-compose
yum -y install docker-compose
2.下载的harbor解压
wget https://ghproxy.com/https://github.com/goharbor/harbor/releases/download/v2.5.3/harbor-offline-installer-v2.5.3.tgz
tar -zxf harbor-offline-installer-v2.1.3.tgz
对harbor配置文件进行修改
vi harbor.cfg
hostname = 20.0.0.10 #本机ip地址
//启动harbor,install.sh
sh /usr/local/harbor/install.sh
//到这里,harbor安装已经完成,可以查看Harbor启动的镜像和容器服务
docker images #查看镜像
docker ps -a #查看容器
访问192.168.188.53 账号密码:admin/zzby@2023
3、推送镜像
docker login -u admin -p zzby@2023 http://192.168.188.53
如报错:(1) vi /usr/lib/systemd/system/docker.service
ExecStart=/usr/bin/dockerd -H fd:// --insecure-registry 20.0.0.10(本机ip) --containerd=/run/containerd/containerd.sock #添加服务器的ip
systemctl daemon-reload
systemctl restart docker
(2)解决方法二:在/etc/docker/daemon.json下加入如下
# cat /etc/docker/daemon.json
{
"exec-opts": ["native.cgroupdriver=systemd"],
"registry-mirrors":[
"https://b4buxx.mirror.aliyuncs.com"
]
}
{
"insecure-registry":["10.0.0.110:"]#harbor地址
}
systemctl daemon-reload && systemctl restart docker
使用docker info就可以看见非安全仓库列表