私有仓库技术

------- arbor (把镜像按项目形式分类) registrator不会

私有仓库操作:需要Python(自带)、Docker和 Docker Compose才能装私有仓库harbor
两个docker 环境10 11
10:
将harbor-offline-installer-v1.2.2.tgz包拖入
tar xzvf harbor-offline-installer-v1. 2.2.tgz /usr/local/ (解压到哪儿就在哪儿)

cd /usr/local/harbor
vim harbor.cfg
hostname = 20.0.0.10 (5行 改成自己) 59有初始密码 damin Harbor12345
(cd /usr/local/harbor vi harbor.cfg)

cd /usr/local/bin/ (加容器编排)
compose拖入
chmod +x docker-compose

安装harbor
cd /usr/local/harbor/
./install.sh (harbor安装完成 且访问地址即可访问harbor仓库)
真机网页20.0.0.10 私有仓库ok
账户:admin
密码:Harbor12345
(有项目栏等 注 项目设为公有就不是私有仓库了)

登陆私有仓库(虚拟机10自己)
docker login -u admin -p Harbor12345 http://127.0.0.1


add:
(登陆harbor仓库,自动下发令牌 此时家目录多了 .docker目录(隐藏式的)有个令牌密钥(其实不止那么长)
cd .docker/
vim config.json
cat config.json | base64 -w 0 (解码看)
总结:登陆harbor,自动下发令牌,每一次push上传pull下载镜像,都要提供令牌验证,否则harbor不认你)

登陆成功、下镜像
docker pull tomcat (是从官网下载)

上传镜像
推送镜像里有命令模板
docker tag tomcat:latest[:TAG] 20.0.0.10/library/tomcatv1 定义镜像
docker push 20.0.0.10/library/tomcatv1 上传镜像(会出错)
把原来地址改成127.0.0.1定义镜像 上传镜像 可行 但是远程怎么办?

另一台远程登harbor出错
(因为不识别20.0.0.10)
解决
11想远程登陆
vim /usr/lib/systemd/system/docker.service (加上要登陆的地址)
ExecStart=/usr/bin/dockerd -H fd:// --insecure-registry 20.0.0.10 --containerd=/run/containerd/containerd.sock
systemctl daemon-reload 先重新加载守护进程
systemctl restart docker 重启docker
docker login -u admin -p  Harbor12345 http://20.0.0.10 远程登陆(用户密码)
docker logout 20.0.0.10 远程退出

私有仓库上传镜像
docker pull nginx 下载(此时是从官方仓库下载)
docker tag nginx:latest 20.0.0.10/library/nginx:v1 打标签
docker push 20.0.0.10/library/nginx 上传到20.0.0.10 刷新一下 20.0.0.10的harbor仓库里就有镜像

私有仓库下载镜像(先全删镜像)真机20.0.0.10仓库项目上面有指令

多试试:harbor 20.0.0.10图形化界面
创建用户
项目加成员

harbor维护
10:
cd /usr/local/ha rbor/ (在有docker-compose.yum文件同级层)
docker-compose down -v 关(容器已经被清掉 docker ps –a 看不见)
vim harbor.cfg (此时 该改配置就改配置)
docker-compose up -d 启

如果需要重新部署,需要移除Harbor服务容器全部数据
持久数据,如镜像,数据库等在宿主机的/data/目录下,日志在宿主机的/var/log/Harbor/目录下
rm -rf /data/database
rm -rf /data/registry

posted @ 2020-12-02 19:03  wqhao  阅读(91)  评论(0编辑  收藏  举报