一、docker-harbor仓库
先把旧的registry删除
docker rm -f registry
1.软件包
docker-compose-Linux-x86_64-1.27.0
harbor-offline-installer-v1.10.1.tgz
tar zxf harbor-offline-installer-v1.10.1.tgz
cd harbor/
mv /root/docker-compose-Linux-x86_64-1.27.0 /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
mkdir /data
cp ~/certs/ /data/ -r
ls /data/certs/
2.修改配置信息
vim harbor.yml
5 hostname: reg.westos.org
17 certificate: /data/certs/westos.org.crt
18 private_key: /data/certs/westos.org.key
27 harbor_admin_password: westos
3.安装
./install.sh 安装
注:当出现 ERROR: yaml.parser.ParserError: while parsing a block mapping in
“./docker-peer.yaml”, line 10, column 5 expected , but found ‘’ in
“./docker-peer.yaml”, line 17, column 3 时是空格导致的未对齐(严格意义上的对齐)
docker-compose ps (必须在harbor目录下输入命令)
docker ps
4.登陆网页
访问172.25.73.4
5.添加默认仓库路径
vim /etc/docker/daemon.json
{
"registry-mirrors": ["https://reg.westos.org"]
}systemctl reload docker.service
docker info 查看到新的添加的镜像路径
测试:
46 docker pull nginx
47 docker rmi nginx:latest 删除nginx后images里没有
48 docker run -d --name demo nginx 运行容器的时候,pull拉取镜像会自动下载没有的镜像
6.获取认证
docker logout reg.westos.org
docker login reg.westos.org
Username: admin
Password:
是登陆web页面的账号密码。
docker tag nginx:latest reg.westos.org/library/nginx:latest
docker push reg.westos.org/library/nginx:latest
网页查看是否上传
7.重新下载配置
docker-compose down
./prepare
./install.sh --with-notary --with-clair --with-chartmuseum
内容信任 ,镜像扫描
相当于:配置中加入了漏洞扫描,内容信任等选项。 在打开的网页中选择漏洞扫描这里主要是作为后期的优化
扫描后的镜像如下图
启用docker内容信任
网页选择内容信任
export DOCKER_CONTENT_TRUST=1
export DOCKER_CONTENT_TRUST_SERVER=https://reg.westos.org:4443部署根证书:
mkdir ~/.docker/tls/reg.westos.org:4443 -p
cd ~/.docker/tls/reg.westos.org:4443
cp /etc/docker/certs.d/reg.westos.org/ca.crt .
上传之前上传的nginx/library
docker push reg.westos.org/library/nginx:latest
显示已经存在,需要我们输入root key 当我们只修改标签的时候,我们只用输入repository key
密码 westos12345
网页访问,签名成功
我们把镜像的名字更改之后重新拉取镜像v1 只需要更改仓库的key
docker tag nginx:latest reg.westos.org/library/nginx:v1
docker push reg.westos.org/library/nginx:v1
网页效果:
还有一个好处为 本来拉取报错的镜像,现在也可以拉取镜像了
当输入export DOCKER_CONTENT_TRUST=0
再次拉取的时候就不需要再输入认证了
8.优化容器
为了不让扫描使占用的空间越来越大,所以重新修改一下选项
export DOCKER_CONTENT_TRUST=0
cd
docker-compose down
./prepare
./install.sh --with-chartmuseum
或者另一种方法
阿里云镜像加速器查找方法:
登录阿里云帐号
找到 容器镜像服务 搜索框输入 镜像 找到 容器镜像服务找到 加速器地址
点镜像加速器 加速器地址 就可以找到操作步骤每个人都有一串不同的代码