CentOS7下使用Harbor搭建Docker私有仓库
相关资料:
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

CentOS7下使用Harbor搭建Docker私有仓库的更多相关文章
- CentOS7下使用SonatypeNexus3搭建Docker私有仓库
前置条件:安装docker(如果机器上没有安装的话) //安装一些必要的系统工具: sudo yum install -y yum-utils device-mapper-persistent-dat ...
- 使用Harbor搭建Docker私有仓库
ip:192.168.0.145 环境设置 防火墙,selinux等,可以使用本章开头的那个shell脚本 其他主机的hosts文件也都添加上 ip hub.aaa.com windows系统的hos ...
- windows 环境下搭建docker私有仓库
windows 环境下搭建docker私有仓库 1.在公用仓库中pull仓库镜像 docker pull regitry 2.启动仓库镜像 //-d意思是后台运行,-p是做端口映射,这里是将本地的50 ...
- 一步步搭建docker私有仓库并从私有仓库中下载镜像
一步步搭建docker私有仓库 #下载镜像 docker pull registry#查看镜像 docker images #运行私有仓库,指定端口和数据卷 docker run -d -p : -v ...
- 搭建docker私有仓库
保存镜像的地方成为仓库(registry).目前有2种仓库:公共仓库和私有仓库. 最方便的是使用公共仓库上传和下载镜像,下载不需要注册,上传需要到公共仓库注册.公共仓库网站:https://hub.d ...
- CentOS7搭建Docker私有仓库----Docker
有时候使用Docker Hub这样的公共仓库可能不方便,这种情况下用户可以使用registry创建一个本地仓库供私人使用,这点跟Maven的管理类似.目前Docker Registry已经升级到了v2 ...
- Centos7基于容器安装运行Docker私有仓库及添加认证
一.前言 官方的Docker hub是一个用于管理公共镜像的好地方,我们可以在上面找到我们想要的镜像,也可以把我们自己的镜像推送上去.但是,有时候,我们的使用场景需要我们拥有一个私有的镜像仓库用于管理 ...
- 手把手教你搭建Docker私有仓库
章节一:centos7 docker安装和使用_入门教程 章节二:使用docker部署Asp.net core web应用程序 有了前面的基础,接下来的操作就比较简单了.先准备两台虚拟机,两台机器上都 ...
- Docker自学纪实(六)搭建docker私有仓库
docker的镜像仓库分两种:一种是从官方公有仓库拉取:还有就是自己搭建私有仓库.官方的镜像仓库是面对整个应用市场的:私有仓库一般用于公司内部,就是公司项目自身所需的镜像.搭建私有仓库有什么好处?私有 ...
随机推荐
- Linux环境下levelDB源码编译与安装
1.下载源码并编译 git clone https://github.com/google/leveldb.git cd leveldb //编译源码的时候需要安装cmake,并且版本需要大于3.9, ...
- Sketch教程
去年夏天开始用Sketch,觉得它放Dock里闪亮亮的很好看,当时笑称是男盆友送我的第一颗小钻石噗哈哈.所以那段时间几乎刷遍了所有关于 Sketch 的网站.文章.教程,之后又在自学设计,因为想和更多 ...
- JAVA基础知识|lambda与stream
lambda与stream是java8中比较重要两个新特性,lambda表达式采用一种简洁的语法定义代码块,允许我们将行为传递到函数中.之前我们想将行为传递到函数中,仅有的选择是使用匿名内部类,现在我 ...
- python 装饰器应用
1 注册回调函数 下面这个示例展示了通过URL的路由来调用相关注册的函数示例: class MyApp(): def __init__(self): self.func_map = {} def re ...
- --thunder-lock is available since uWSGI 1.4.6 but never got documentation (of any kind)
--thunder-lock is available since uWSGI 1.4.6 but never got documentation (of any kind) Serializing ...
- centos出现磁盘坏道,怎么检索和修复
故障现象,在/var/log/message这个目录中出现下面的error: [ [ [ [ [ [ [ [ [ [ dmesg的输出结果也是上面的error. 1.检测下坏道,将结果保存在bb.lo ...
- Java NIO 学习笔记 缓冲区补充
1.缓冲区分配 方法 以 ByteBuffer 为例 (1)使用静态方法 ByteBuffer buffer = ByteBuffer.allocate( 500 ); allocate() 方法 ...
- Java 实现 bash命令
Java 实现 bash命令 1.BASH 命令简介 Bash,Unix shell的一种,在1987年由布莱恩·福克斯为了GNU计划而编写.1989年发布第一个正式版本,原先是计划用在GNU操作系统 ...
- HDFS的NameNode与SecondaryNameNode的工作原理
原文:https://blog.51cto.com/xpleaf/2147375 看完之后确实对nameNode的工作更加清晰一些 在Hadoop中,有一些命名不好的模块,Secondary Name ...
- Linux信号、信号处理和信号处理函数
信号(signal)是一种软件中断,它提供了一种处理异步事件的方法,也是进程间惟一的异步通信方式.在Linux系统中,根据POSIX标准扩展以后的信号机制,不仅可以用来通知某种程序发生了什么事件,还可 ...