前言
学习了前面的仓库基本配置(企业运维6)docker容器技术2 --仓库篇仍然有很多不足之处,没有扫描,签字更没有webUI功能,这里继续学习一款企业级别的docker仓库管理工具,harbor
首先清理之前搭建的私有仓库的环境,保留之前实验的加密和证书。
docker rm -f registry
cd .docker/
rm -fr config.json
1、安装harbor
解压离线安装包
pwd
/root/
tar zxf harbor-offline-installer-v1.10.1.tgz
除了离线安装包,还需要docker-compose-Linux工具
mv docker-compose-Linux-x86_64-1.27.0 /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
修改harbor的配置文件
cd harbor/
vim harbor.yml
hostname: reg.westos.org
certificate: /root/certs/westos.org.crt
private_key: /root/certs/westos.org.key
harbor_admin_password: Harbor12345
data_volume: /data
在harbor目录下安装harbor
cd harbor/
./install.sh
docker-compose ps
vim docker-compose.yml
就可以在浏览器使用用户和密码登陆harbor了
增加共有库或私有库
上传 下载测试:
docker login reg.westos.org #需要先登陆
docker images
docker tag busybox:latest reg.westos.org/library/busybox #按格式打标签
docker push reg.westos.org/library/busybox:latest # 上传
2、添加用户
3、增加扫描,签名功能
依然在harbor目录下
docker-compose down #把之前的harbor容器删除
./prepare # 清理缓存命令
./install.sh --help
--with-notary #签名模块
--with-clair #扫描模块
--with-chartmuseum #K8S使用
./install.sh --with-clair --with-notary --with-chartmuseum #重新安装带扫描签名模块的harbor
docker-compose ps
docker login reg.westos.org
3.1 扫描
上传镜像自动扫描
3.2签名
部署根证书
cp /root/certs/westos.org.crt /etc/docker/certs.d/reg.westos.org/ca.crt
mkdir ~/.docker/tls/reg.westos.org:4443/ -p
cd /etc/docker/certs.d/reg.westos.org/
cp ca.crt ~/.docker/tls/reg.westos.org\:4443/
/etc/docker/certs.d/reg.westos.org/ca.crt
/root/.docker/tls/reg.westos.org:4443/ca.crt
启用docker内容信任
export DOCKER_CONTENT_TRUST=1
export DOCKER_CONTENT_TRUST_SERVER=https://reg.westos.org:4443
上传,下载镜像
docker images
docker pull reg.westos.org/westos/nginx
docker tag busybox:latest reg.westos.org/library/busybox:latest #按格式打标签
docker push reg.westos.org/library/busybox:latest # 上传
3.3测试
没有标签的无法下载
有标签的下载正常
4、 取消签名机制,保留其不占用空间,为之后学习K8S作准备
export DOCKER_CONTENT_TRUST=0
docker-compose down
./prepare
./install.sh --help
./install.sh --with-chartmuseum