一、常见的docker私有库
常见的docker私有库有:Portus、Harbor、AppHouse等。其中,Harbor是由VMware公司中国团队为企业用户设计的Registry server开源项目,包括了权限管理(RBAC)、LDAP、审计、管理界面、自我注册、HA等企业必需的功能,同时针对中国用户的特点,设计镜像复制和中文支持等功能,本教程主要就是讲解Harbor的安装步骤和使用方法。
二、Harbor安装步骤
1、环境准备
安装Harbor之前,需要预先安装需要的其他软件,根据官方文档可以看出,需要以下三个:
- Docker engine 安装
docker的安装参考《CentOS7.0环境安装docker》 - Docker Compose 安装
- Github源
sudo curl -L https://github.com/docker/compose/releases/download/1.22.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
- Daocloud镜像
curl -L https://get.daocloud.io/docker/compose/releases/download/1.22.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
也可以参考《官方安装教程》
- Openssl 安装
首先验证是否安装,如果没有安装通过下面命令安装即可。
yum install openssl
1、下载Harbor
Harbor提供了两种安装文件,
-
Harbor offline installer 离线安装
-
Harbor online installer 在线安装
本教程使用的Harbor版本:
2、把压缩包放到CentOS系统的指定目录,并解压
tar xvf harbor-offline-installer-v1.9.1.tgz
解压后:
3、修改配置文件
修改harbor.yml配置文件中的hostname参数,其他的都使用默认配置。
4、安装启动
通过下面命令进行启动harbor。当命令执行完成,出现下图的界面时,说明启动成功了,这个时候可以通过浏览器访问:192.168.1.8,打开管理界面。
./install.sh
注:执行该命令的时候,需要保证docker已经启动。否则会出现报错:Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?。启动docker的命令 systemctl start docker。
5、登录Harbor管理界面
Harbor管理界面,默认的用户名:admin,密码:Harbor123456。如果在进行harbor.yml配置文件修改时,修改了相关配置,就需要使用相关参数进行登录。
三、应用
1、创建Harbor用户
2、创建Harbor项目
3、添加项目用户
4、查看仓库推送命令
5、推送下面选中的镜像推送到私有仓库。
具体操作请参考《docker常用命令》。
- 首先登录(私有类型的仓库需要)
如果仓库是私有的话,需要登录,否则会出现如下提示:
登录命令:
ip地址对应的是仓库地址,-u参数对应的是用户名。
docker login 192.168.1.8 -u=hsh
执行命令后,再输入密码,即可登录,如下图所示。
3. 重命名镜像
docker tag goharbor/nginx-photon:v1.9.1 192.168.1.8/test/nginx-photon:v-test
执行重命名命令后,多了一个镜像记录。
2. 推送镜像到私有库
执行下列命令,出现下图所示,说明镜像推送成功。
docker push 192.168.1.8/test/nginx-photon:v-test
四、常见问题
1、推送镜像到私有库时,出现如下报错:
The push refers to repository [192.168.1.8/test/nginx-photon]
Get https://192.168.1.8/v2/: dial tcp 192.168.1.8:443: getsockopt: connection refused
发生原因:
Docker自从1.3.X之后docker registry交互默认使用的是HTTPS,但是搭建私有镜像默认使用的是HTTP服务,所以与私有镜像交时出现以上错误。
解决方案:
增加启动参数,默认使用HTTP访问。具体步骤:
- 通过下面命令修改配置
vim /usr/lib/systemd/system/docker.service
- 增加参数
增加下列参数即可,其中IP地址是Harbor部署的服务器所在的IP。
--insecure-registry IP
3. 刷新参数、重启服务
systemctl daemon-reload
systemctl restart docker
五、参考文档:
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/68892.html