docker的企业级仓库-harbor
- 在线安装:从Docker Hub下载Harbor相关镜像,因此安装软件包非常小
- 离线安装:安装包包含部署的相关镜像,因此安装包比较大
- OVA安装程序:当用户具有vCenter环境时,使用此安装程序,在部署OVA后启动Harbor
- 离线安装docker-compse工具
- [root@docker01 ~]# ls
- docker-compose.1.25.0.tar.gz harbor-offline-installer-v2.0.2.tgz
- [root@docker01 ~]# tar zxpf docker-compose.1.25.0.tar.gz -C
- /usr/local/bin/
- [root@docker01 ~]# cd /usr/local/bin/
- [root@docker01 bin]# ls
- docker-compose-Linux-x86_64
- [root@docker01 bin]# mv docker-compose-Linux-x86_64 docker-compose
- [root@docker01 bin]# chmod +x /usr/local/bin/docker-compose
- [root@docker01 bin]# docker-compose -v
- docker-compose version 1.25.0, build 0a186604
- //下载依赖包
- [root@docker bin]# yum -y install yum-utils device-mapper-persistentdata lvm2
直接在百度搜 harbor进官网 harbor的部署方式,有在线和离线两种方式,考虑到网速原因,这里我们采用离线下载方式。
wget https://storage.googleapis.com/harbor-releases/release-1.7.0/harbor-offline-installer-v1.7.4.tgz
- [root@docker01 ~]# tar -zxf harbor-offline-installer-v2.0.2.tgz -C /usr/local/
- [root@docker01 ~]# cd /usr/local/harbor/
- [root@docker harbor]# ls
- common.sh harbor.v2.0.2.tar.gz harbor.yml.tmpl install.sh LICENSE prepare
- [root@docker01 harbor]# cp harbor.yml.tmpl harbor.yml
- [root@docker01 harbor]# vim harbor.yml
修改hostname=IP
注释掉https,我们就用http就可以了。如果要用https需要开启nginx sll为on
// 修改完配置文件后,在的当前目录执行./install.sh,Harbor服务就会根据当期目录下的docker-compose.yml开始下载依赖的镜像,检测并按照顺序依次启动,并且注意,harbor默认使用的是80端口,最好确认是否有冲突,或者也可以在docker-compose.yml中修改对应的端口
- [root@docker01 harbor]# systemctl daemon-reload
- [root@docker01 harbor]# systemctl restart docker
- [root@docker01 harbor]# ./install.sh
查看和监控
- [root@docker01 harbor]# docker ps
- CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
- af0d3f823c92 goharbor/registry-photon:v2.0.2 "/home/harbor/entryp…" About a minute ago Up 2 seconds (health: starting) 5000/tcp registry
- ce229f6b7e37 goharbor/harbor-db:v2.0.2 "/docker-entrypoint.…" About a minute ago Up 2 seconds (health: starting) 5432/tcp harbor-db
- a357025287c1 goharbor/harbor-log:v2.0.2 "/bin/sh -c /usr/loc…" About a minute ago Up 2 seconds (health: starting) 127.0.0.1:1514->10514/tcp harbor-log harbor-log
- [root@docker01 harbor]# pwd
- /usr/local/harbor
- [root@docker harbor]# docker-compose start
- Starting log ... done
- Starting registry ... done
- Starting registryctl ... done
- Starting postgresql ... done
- Starting portal ... done
- Starting redis ... done
- Starting core ... done
- Starting jobservice ... done
- Starting proxy ... done
- [root@docker01 harbor]# netstat -anput | grep 80
- tcp 0 0 127.0.0.1:51580 127.0.0.1:1514 ESTABLISHED 6286/dockerd
- tcp 0 0 127.0.0.1:1514 127.0.0.1:51580 ESTABLISHED 6474/docker-proxy
- tcp6 0 0 :::80 :::* LISTEN 8355/docker-proxy


- [root@docker02 /]# vim /usr/lib/systemd/system/docker.service
- .....
- ExecStart=/usr/bin/dockerd --insecure-registry 192.168.1.10
- ....
- [root@docker02 /]# systemctl daemon-reload
- [root@docker02 /]# systemctl restart docker
- [root@docker02 ~]# docker images
- REPOSITORY TAG IMAGE ID CREATED SIZE
- centos7 latest 7e6257c9f8d8 5 months ago 203MB
- [root@docker02 ~]# docker tag centos7:latest 192.168.1.10/test/centos:7
- //重新打个标签
- [root@docker02 ~]# docker login -u admin -p Harbor12345 192.168.1.10
- //登录
- WARNING! Using --password via the CLI is insecure. Use --password-stdin.
- WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
- Configure a credential helper to remove this warning. See
- https://docs.docker.com/engine/reference/commandline/login/#credentials-store
- Login Succeeded
- [root@docker02 ~]# docker push 192.168.1.10/test/centos
- //上传
- The push refers to repository [192.168.1.10/test/centos]
- 613be09ab3c0: Pushed
- 7: digest: sha256:fe2347002c630d5d61bf2f28f21246ad1c21cc6fd343e70b4cf1e5102f8711a9 size: 529
- [root@docker ~]# docker images
- //查看harbor仓库所有镜像
- REPOSITORY TAG IMAGE ID CREATED SIZE
- 192.168.1.10:5000/httpd-iso latest 740e9757f71d 4 hours ago 567MB
命令总结
- #推送之前先登录Harbor
- docker login docker login registry.test.myop.com -u admin -p Harbor12345
- 提示success登录成功
- 查看自己有哪些镜像;docker images
- 把需要上传到Harbor的镜像运行如下命令就可以了
- #镜像打标签
- docker tag 镜像名:标签 私服地址/仓库项目名/镜像名:标签
- #推送到私服
- docker push 私服地址/仓库项目名/镜像名:标签
- #从私服拉取镜像
- docker pull 私服地址/仓库项目名/镜像名:标签
- 也可以在web界面复制下载路径
- #通过compose关闭harbor容器服务
- docker-compose down
docker的企业级仓库-harbor的更多相关文章
- 菜鸟系列docker——搭建私有仓库harbor(6)
docker 搭建私有仓库harbor 1. 准备条件 安装docker sudo yum update sudo yum install -y yum-utils device-mapper-per ...
- docker的私有化仓库harbor搭建
目前比较流行的docker私有化仓库是harbor,harbor是一个github开源的项目,直接在github上搜索即可,下载地址:https://github.com/goharbor/harbo ...
- Docker私有镜像仓库Harbor
一.安装Harbor(离线安装包的方式安装) 1.解压离线包 2.进入harbor目录中编辑harbor.yml 3.安装docker-compose yum -y install docker-co ...
- 企业级Docker容器镜像仓库Harbor的搭建
Harbor简述 Habor是由VMWare公司开源的容器镜像仓库.事实上,Habor是在Docker Registry上进行了相应的企业级扩展,从而获得了更加广泛的应用,这些新的企业级特性包括:管理 ...
- Docker企业级仓库Harbor的安装配置与使用
Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器,通过添加一些企业必需的功能特性,例如安全.标识和管理等,扩展了开源Docker Distribution.作为一个企业级 ...
- 企业级仓库harbor搭建
1.Harbor是什么? Harbor是Vmvare中国团队开发的开源registry仓库,相比docker官方拥有更丰富的权限权利和完善的架构设计,适用大规模docker集群部署提供仓库服务.在企业 ...
- 容器技术之Docker私有镜像仓库harbor
前文我们聊到了docker的私有镜像仓库docker-distribution的搭建和简单的使用,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/13058338 ...
- docker 搭建私有仓库 harbor
前提 已安装好 docker 和 docker-compose 环境:CentOS Linux release 7.5 docker 版本:18.09.05 1.安装harbor wget -P / ...
- docker 系列 - 企业级私有镜像仓库Harbor部署(转载)
本文转载自 搜云库 的文章 https://www.jianshu.com/p/7d76850de03f , 感谢作者 3.png 上一篇文章搭建了一个具有基础功能,权限认证.TLS 的私有仓库, ...
随机推荐
- (数据科学学习手札104)Python+Dash快速web应用开发——回调交互篇(上)
本文示例代码已上传至我的Github仓库https://github.com/CNFeffery/DataScienceStudyNotes 1 简介 这是我的系列教程Python+Dash快速web ...
- Java中的深浅拷贝问题,你清楚吗?
一.前言 拷贝这个词想必大家都很熟悉,在工作中经常需要拷贝一份文件作为副本.拷贝的好处也很明显,相较于新建来说,可以节省很大的工作量.在Java中,同样存在拷贝这个概念,拷贝的意义也是可以节省创建对象 ...
- 一个非常棒的Go-Json解析库
json是一种数据格式,经常被用作数据交换,页面展示,序列化等场景,基本每种语言都有对应的json解析框架,Go语言也不例外,并且内置了json库,基本能够满足一些普通开发场景,但有些复杂场景下就不太 ...
- pandas的级联操作
级联操作 pd.concat, pd.append import pandas as pd from pandas import DataFrame import numpy as np pandas ...
- winform 扫码识别二维码
因为公司业务需求,需要在Windows系统下调用摄像头识别二维码需求,就有了这个功能. 我根据网上网友提供的一些资料,自己整合应用到项目中,效果还不错(就是感觉像素不是太好) 现在将调用摄像头+识别二 ...
- (16)-Python3之--集合(set)操作
1.定义 集合的关键字:set 集合主要作用: 去重,把一个列表变成集合,就自动去重了 关系测试,测试两组数据之前的交集.差集.并集等关系 集合用大括号{}表示,元素间用逗号分隔. 建立集合类型用{} ...
- 浅析Redis与IO多路复用器原理
为什么Redis使用多路复用I/O Redis 是跑在单线程中的,所有的操作都是按照顺序线性执行的,但是由于读写操作等待用户输入或输出都是阻塞的,所以 I/O 操作在一般情况下往往不能直接返回,这会导 ...
- V2版的接口在V3版里面都能找到对应接口 数据结构
开发文档 - 微信支付商户平台 https://pay.weixin.qq.com/wiki/doc/apiv3/wxpay/pages/api.shtml 版本选择 关闭 V2版接口和V3版接口实际 ...
- JVM笔记 -- Java跨平台和JVM跨语言
学习JVM的重要性 从上层应用程序到底层操作系统,到底有哪些东西? 平时开发的应用程序主要基于各种框架,譬如Spring,SpringMVC,Mybatis,而各种框架又是基于Java API来实现的 ...
- 精通MySQL之索引篇,这篇注重练习!
老刘是即将找工作的研究生,自学大数据开发,一路走来,感慨颇深,网上大数据的资料良莠不齐,于是想写一份详细的大数据开发指南.这份指南把大数据的[基础知识][框架分析][源码理解]都用自己的话描述出来,让 ...