CentOS7下使用Harbor搭建Docker私有仓库
2024-09-06 16:01:41
相关资料:
Harbor官方网站:https://goharbor.io/
Harbor Github地址:https://github.com/goharbor/harbor
⒈安装Docker(必要条件)
1.请参考https://www.cnblogs.com/fanqisoft/p/10439620.html安装Docker
2.在Docker中配置可信
//编辑docker服务端设置
vim /etc/docker/daemon.json //将下面内容加到配置文件中
"insecure-registries":["https://hub.coreqi.cn"] //重载配置文件
systemctl daemon-reload //重启Docker
systemctl restart docker //查看设置是否生效
docker info
⒉安装
1.下载离线安装包
wget https://storage.googleapis.com/harbor-releases/release-1.9.0/harbor-offline-installer-v1.9.0-rc1.tgz
2.解压离线安装包
tar -zxvf harbor-offline-installer-v1.9.0-rc1.tgz
3.生成使用的私钥密钥,官方教程地址:https://github.com/goharbor/harbor/blob/master/docs/configure_https.md
#创建保存私钥证书的目录
mkdir -p /data/cert
cd /data/cert
#生成私钥 --注意输入两次相同的私钥密码
openssl genrsa -des3 -out server.key
#生成证书 --输入私钥密码 --输入国家代码 --输入省份缩写 --输入城市缩写 --输入组织缩写 --输入机构缩写 --输入域名 --输入管理员邮箱 --是否更改密码(可以忽略,直接回车即可)
openssl req -new -key server.key -out server.csr
#备份私钥
cp server.key server.key.org
#转换为证书【因为Docker里面引导时是使用Nginx当前端的,所以引导启动时如果私钥和证书是有密码的话就会出现引导不成功的问题,所以我们需要删除私钥和证书的密码,这一步骤就是执行该操作】
openssl rsa -in server.key.org -out server.key
#重新签名生成证书
openssl x509 -req -days -in server.csr -signkey server.key -out server.crt
#对证书重新赋予权限
chmod a+x *
4.编辑Harbor的配置文件
#回到解压目录
cd -
cd harbor/
vim harbor.yml
下面还有一些密码配置我们就不改了,但是需要记住。
重新为Harbor生成配置文件
./prepare
5.安装docker-compose
#下载最新版的docker-compose文件
sudo curl -L https://github.com/docker/compose/releases/download/1.24.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
#添加可执行权限
sudo chmod +x /usr/local/bin/docker-compose
#测试安装结果
docker-compose --version
6.开始安装
./install.sh
安装成功。
7.开始配置
1.添加host映射
echo "192.168.227.129 hub.coreqi.cn" >> /etc/hosts
cat /ect/hosts
2.访问https://hub.coreqi.cn测试
8.登录私有仓库,测试是否可以连接成功
//输入admin账号密码
docker login https://hub.coreqi.cn
**登录后用户信息保存在$HOME/.docker/config.json,如果需要切换账号就清空该文件内容即可。
9.测试
1.制作image
//拉取hello-world镜像作为示例
docker pull hello-world
//制作私有镜像
docker tag hello-world hub.coreqi.cn/library/hello-world
2.推送到私有仓库
//推送到私有服务器
docker push hub.coreqi.cn/library/hello-world
最新文章
- 微信小程序体验(1):携程酒店机票火车票
- 用原始方法解析复杂字符串,json一定要用JsonMapper么?
- PHPUnit入门
- Python之路-python(css布局、JavaScript)
- VirtualBox相关问题总结
- nodeschool.io 3
- Osmocom-BB中cell_log的多种使用姿势
- 第六篇、AVplayer定制视频播放控件
- Gulp实战(二)
- 利用CSS边框合并属性打造table细边框
- FileZilla 无法保存密码
- Ubuntu 12.04下安装thrift 0.9
- 识别你的ADFS是什么版本的(Which version of ADFS is running)
- 《Java开发学习大纲文档》V6.0(已经不公布了,请查看第七版)
- Function、Object、Prototype 之间的关系解析
- 【转】Eclipse 乱码 解决方案总结(UTF8 -- GBK)
- 2019ExcelVBA一些自己掉进过的坑
- js中use或者using方法
- Golang如何使用websocket
- Codeforces Round #297 (Div. 2)D. Arthur and Walls 暴力搜索