安装docker:
[root@server7 Downloads]# yum install -y docker-ce container-selinux-2.77-1.el7.noarch.rpm
[root@server7 Downloads]# tar zxf harbor-offline-installer-v1.10.1.tgz
[root@server7 Downloads]# cd harbor/
[root@server7 harbor]# vim harbor.yml
[root@server7 harbor]# ./install.sh ##运行脚本出错
下载docker-compose(1.18.0+) http://mirrors.aliyun.com/docker-toolbox/linux/compose/1.21.2/
[root@server7 Downloads]# mv docker-compose-Linux-x86_64 /usr/local/bin/docker-compose
[root@server7 Downloads]# chmod +x /usr/local/bin/docker-compose
[root@server7 harbor]# ./install.sh ##运行脚本
[root@server7 harbor]# netstat -antlp ##80端口
访问:
登陆:用户名:admin 密码:westos
[root@server7 harbor]# vim /etc/hosts ##添加解析
为Docker仓库添加证书加密功能:
[root@server7 harbor]# docker-compose stop ##停掉docker-compose
[root@server7 harbor]# vim harbor.yml ##开启加密
[root@server7 harbor]# cd /data/
[root@server7 data]# mkdir -p certs
[root@server7 data]# openssl req -newkey rsa:4096 -nodes -sha256 -keyout certs/westos.org.key -x509 -days 365 -out certs/westos.org.crt ##生成证书
[root@server7 harbor]# ./prepare ##预处理
[root@server7 harbor]# ./install.sh
[root@server7 harbor]# netstat -antlp
访问:192.168.21.138 选择高级接受风险进入
在远程主机上传镜像:
[root@server6 docker]# vim /etc/hosts ##添加解析
[root@server6 docker]# docker tag nginx:latest reg.westos.org/library/nginx:latest
[root@server6 docker]# docker push reg.westos.org/library/nginx ##报错提示无证书
[root@server6 docker]# mkdir -p /etc/docker/certs.d/westos.org/ ##创建目录
[root@server6 certs.d]# mv westos.org/ reg.westos.org ##修改名称
[root@server7 certs]# scp westos.org.crt root@192.168.21.133:/etc/docker/certs.d/reg.westos.org/ca.crt ##在server7中复制证书
使用用户登陆:
[root@server6 reg.westos.org]# docker login reg.westos.org
上传:
[root@server6 reg.westos.org]# docker push reg.westos.org/library/nginx
查看:
下载:
[root@server6 reg.westos.org]# docker logout reg.westos.org ##注销
[root@server6 reg.westos.org]# docker pull reg.westos.org/library/nginx ##下载
配置拉取私有仓库镜像:(加速器)
[root@server6 reg.westos.org]# cd /etc/docker/
[root@server6 docker]# vim daemon.json
[root@server6 docker]# systemctl restart docker
测试:
[root@server6 docker]# docker pull nginx
[root@server7 docker]# mkdir certs.d/reg.westos.org/ -p
[root@server7 docker]# cd certs.d/reg.westos.org/
[root@server7 reg.westos.org]# cp /data/certs/westos.org.crt ca.crt ##拷贝证书
[root@server7 ~]# docker login reg.westos.org
[root@server7 docker]# docker pull yakexi007/game2048 ##下载镜像
[root@server7 docker]# docker tag yakexi007/game2048:latest reg.westos.org/library/game2048 ##重命名
[root@server7 certs.d]# docker push reg.westos.org/library/game2048 ##上传镜像
[root@server6 docker]# docker pull game2048 ##在远程主机拉取镜像
新建私有仓库:
创建用户:
将用户贴加为开发人员:
用开发人员用户上传镜像:
[root@server6 docker]# docker login reg.westos.org
[root@server6 docker]# docker tag game2048:latest reg.westos.org/westos/game2048 ##命名
[root@server6 docker]# docker push reg.westos.org/westos/game2048 ##上传
查看:
[root@server7 harbor]# docker rmi yakexi007/game2048 ##删除虚拟机中已有的game2048
[root@server7 harbor]# docker pull reg.westos.org/game2048 ##退出后拉取失败
添加认证:
[root@server7 ~]# docker pull reg.westos.org/westos/game2048 ##拉取
[root@server7 harbor]# docker-compose stop ##关闭
[root@server7 harbor]# ./install.sh --with-notary --with-clair --with-chartmuseum ##加入参数(信任,扫描)
查看:
扫描:
harbor仓库部署镜像扫描:
为了系统运行安全加入扫描和信任:
测试,以busybox为例:
[root@server7 harbor]# docker login reg.westos.org
[root@server7 harbor]# docker pull busybox ##拉取镜像
[root@server7 harbor]# docker tag busybox:latest reg.westos.org/library/busybox ##打签
[root@server7 harbor]# docker push reg.westos.org/library/busybox
查看: