docker(3):Docker 仓库之docker-harbor仓库

 一、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/

docker(3):Docker 仓库之docker-harbor仓库

 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

docker(3):Docker 仓库之docker-harbor仓库

 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(3):Docker 仓库之docker-harbor仓库

 docker-compose ps (必须在harbor目录下输入命令)
docker ps

docker(3):Docker 仓库之docker-harbor仓库

 4.登陆网页

访问172.25.73.4

docker(3):Docker 仓库之docker-harbor仓库

docker(3):Docker 仓库之docker-harbor仓库

5.添加默认仓库路径

vim /etc/docker/daemon.json

{
  "registry-mirrors": ["https://reg.westos.org"]
}

systemctl reload docker.service

 docker info  查看到新的添加的镜像路径

docker(3):Docker 仓库之docker-harbor仓库

测试:

 46  docker pull nginx
   47  docker rmi nginx:latest   删除nginx后images里没有
   48  docker run -d --name demo nginx  运行容器的时候,pull拉取镜像会自动下载没有的镜像

docker(3):Docker 仓库之docker-harbor仓库

6.获取认证

docker logout reg.westos.org
docker login reg.westos.org
Username: admin
Password:
是登陆web页面的账号密码。

docker(3):Docker 仓库之docker-harbor仓库

 docker tag nginx:latest reg.westos.org/library/nginx:latest
docker push reg.westos.org/library/nginx:latest
网页查看是否上传

docker(3):Docker 仓库之docker-harbor仓库

 docker(3):Docker 仓库之docker-harbor仓库

 7.重新下载配置

docker-compose down

./prepare

./install.sh --with-notary --with-clair --with-chartmuseum

内容信任 ,镜像扫描
相当于:配置中加入了漏洞扫描,内容信任等选项。  在打开的网页中选择漏洞扫描

这里主要是作为后期的优化

docker(3):Docker 仓库之docker-harbor仓库

 docker(3):Docker 仓库之docker-harbor仓库

docker(3):Docker 仓库之docker-harbor仓库 

扫描后的镜像如下图

docker(3):Docker 仓库之docker-harbor仓库

启用docker内容信任

网页选择内容信任

docker(3):Docker 仓库之docker-harbor仓库

 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 .

docker(3):Docker 仓库之docker-harbor仓库

 上传之前上传的nginx/library

docker push reg.westos.org/library/nginx:latest

显示已经存在,需要我们输入root key 当我们只修改标签的时候,我们只用输入repository key

密码  westos12345

docker(3):Docker 仓库之docker-harbor仓库

 网页访问,签名成功

docker(3):Docker 仓库之docker-harbor仓库

 我们把镜像的名字更改之后重新拉取镜像v1 只需要更改仓库的key

docker tag nginx:latest reg.westos.org/library/nginx:v1
docker push reg.westos.org/library/nginx:v1

docker(3):Docker 仓库之docker-harbor仓库

 网页效果:

还有一个好处为 本来拉取报错的镜像,现在也可以拉取镜像了

docker(3):Docker 仓库之docker-harbor仓库

 当输入export DOCKER_CONTENT_TRUST=0

再次拉取的时候就不需要再输入认证了

8.优化容器

为了不让扫描使占用的空间越来越大,所以重新修改一下选项

export DOCKER_CONTENT_TRUST=0
cd
docker-compose down
./prepare
./install.sh --with-chartmuseum

docker(3):Docker 仓库之docker-harbor仓库

 或者另一种方法

阿里云镜像加速器查找方法:
登录阿里云帐号
找到 容器镜像服务 搜索框输入 镜像 找到 容器镜像服务
docker(3):Docker 仓库之docker-harbor仓库

找到 加速器地址
点镜像加速器 加速器地址 就可以找到操作步骤每个人都有一串不同的代码

 

上一篇:Linux第一章 Linux命令行使用技巧


下一篇:数据库