私有仓库最常用的就是registry、Harbor两种,Harbor私有仓库和Registry私有仓库相比,功能强大很多,并且支持web图形化管理。此文采用Harbor作为私有仓库。
一、安装准备
harbor下载地址:https://github.com/goharbor/harbor/releases
harbor官方文档:https://github.com/goharbor/harbor/blob/master/docs/installation_guide.md
docker-compose下载地址:https://github.com/docker/compose/releases/
docker-compose官方文档:https://docs.docker.com/compose/install/
二、安装openssl
yum install -y openssh-clients
#查看版本
openssl version
三、安装docker-ce
见之前文档
四、安装docker-compose
wget https://github.com/docker/compose/releases/download/1.24.1/docker-compose-Linux-x86_64 -O /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
查看版本
docker-compose --version
五、安装harbor
5.1下载安装程序
下载离线安装包
wget https://storage.googleapis.com/harbor-releases/release-1.9.0/harbor-offline-installer-v1.9.0.tgz
解压缩
tar -vxf harbor-offline-installer-v1.9.0.tgz
5.2配置harbor.yml
vi harbor/harbor.yml
hostname改成IP 其他可不改使用默认配置
5.3运行install.sh安装并启动Harbor
./install.sh
5.4验证
默认端口为80
控制台登录地址:http://10.12.20.20
5.5客户端配置
与harbor交互默认使用的是https,然而此处搭建的私有仓库只提供http服务,所以当与私有仓库交互时就会报上面的错误。为了解决这个问题需要在启动docker server时增加启动参数为默认使用http访问。修改docker启动配置文件:
vi /usr/lib/systemd/system/docker.service
找到 ExecStart
ExecStart=/usr/bin/dockerd --insecure-registry 10.12.20.20
重启docker
systemctl daemon-reload
登录
docker login -u admin -p Harbor12345 10.12.20.20
打标签
docker tag openjdk:8-jre 10.12.20.20/pub/openjdk:8-jre
推送
docker push 10.12.20.20/pub/openjdk:8-jre