菜鸟系列docker——搭建私有仓库harbor(6)
docker 搭建私有仓库harbor
1. 准备条件
- 安装docker
sudo yum update
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo yum list docker-ce --showduplicates | sort -r
可根据上述显示版本自行安装,本人是默认
sudo yum install docker-ce
docker version
sudo systemctl start docker
因为一般docker操作时都需要root用户权限,这里建议把当前用户加入docker用户组
# 添加 docker 用户组
groupadd docker
# 把需要执行的 docker 用户添加进该组,这里是 eggsy
gpasswd -a eggsy docker
# 重启 docker
systemctl restart docker
如果普通用户执行docker命令,如果提示get …… dial unix /var/run/docker.sock权限不够,则修改/var/run/docker.sock权限 使用root用户执行如下命令,即可
sudo chmod a+rw /var/run/docker.sock
# docker服务开机自启动
systemctl enable docker
- 安装docker-compose
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
2.安装haobor
2.1下载harbor
这里选择离线包,各位自行选择
https://github.com/goharbor/harbor/releases
2.2准备https证书(不使用https则省略)
由于Docker上传默认使用的Https,为了不影响客户端的使用,这里使用自签泛域名证书的方式进行测试;这一步也可以不做配置,那么就只支持http的上传,客户端就需要指定授权,具体的方式下面会介绍;如果不想配置https证书或者不想配,可以直接跳过本节直接看下一节.
- 下载代码
git clone https://github.com/Fishdrowned/ssl.git
- 生成证书
./gen.cert.sh harbor.yunphant.com
如果需要给Ip签名
subjectAltName = IP:192.168.9.28
2.3修改harbor配置
进入harbor文件夹,修改harbor.yml
#主机地址,前面配置的域名
hostname: hub.lpf.com
# http 相关的配置
http:
port: 80
# https 相关配置
# 默认情况下,https的配置都没有开启,由于我们已经生成了自签的正式,这里就做https的ssl证书配置
# 如果不需要https证书,可以将以下配置注释掉
https:
# https 的端口,443地址
port: 443
# 签名生成的证书的相关路径
# 以下的路径请根据个人的具体情况配置
certificate: /home/data/keys/harbor/hub.lpf.com.crt
private_key: /home/data/keys/harbor/cert.key.pem
目前我们只修改以上的配置,如果需要更多的配置,可以根据描述进行修改调整;
2.4安装harbor
进入harbor目录
./install.sh
如果出现问题
./prepare
sudo `which docker-compose` up -d
3.https进行镜像操作
- 客户端需进行以下准备
/etc/docker/daemon.json的配置文件下添加授权
{
"insecure-registries":["harbor.yunphant.com","192.168.9.8"]
}
重启
sudo systemctl restart docker
上面可只加ip,域名可配。
如果配置harbor.yunphant.com的话序添加host文件
192.168.9.8 harbor.yunphant.com
- 客户端添加HTTPS证书
mkdir -p /etc/docker/certs.d/harbor.yunphant.com // 将上面生成的证书root.crt拷贝到该目录(每个客户端都需要放) - 客户端配置host文件(可配)
192.168.9.8 harbor.yunphant.com 镜像操作
如果只使用ip,下面将域名改成ip即可
docker tag node:8.11.3-alpine harbor.yunphant.com/test/node:8.11.3-alpine docker push harbor.yunphant.com/test/node:8.11.3-alpine docker pull harbor.yunphant.com/test/node:8.11.3-alpine4.http进行镜像操作
首先将harbor配置文件修改为http.
- 所有访问私有仓库的客户端使用准备
/etc/docker/daemon.json的配置文件下添加授权
{ "insecure-registries":["192.168.9.8:80"] }
重启
sudo systemctl restart docker - 镜像操作
- 登陆网站新建项目test(可选)
建议根据业务需求新建项目保存对应镜像
网站:192.168.9.8- 给镜像打tag
docker tag xxx:xxx 192.168.9.8:80/项目名/xxx:xxx docker tag node:8.11.3-alpine 192.168.9.8:80/test/node:8.11.3-alpine- 推送镜像(需要登陆)
docker login 192.168.9.8:80 用户名:admin 密码:yunphantdocker push 192.168.9.8:80/test/node:8.11.3-alpine- 拉取镜像
docker pull 192.168.9.8:80/test/node:8.11.3-alpine - 登陆网站新建项目test(可选)
菜鸟系列docker——搭建私有仓库harbor(6)的更多相关文章
- docker 搭建私有仓库 harbor
前提 已安装好 docker 和 docker-compose 环境:CentOS Linux release 7.5 docker 版本:18.09.05 1.安装harbor wget -P / ...
- Docker 搭建私有仓库
Docker 搭建私有仓库 环境: docker 版本 :18.09.1 主机地址:192.168.1.79 1.运行并创建私有仓库 docker run -d \ -v /opt/registry: ...
- [Docker]docker搭建私有仓库(ssl、身份认证)
docker搭建私有仓库(ssl.身份认证) 环境:CentOS 7.Docker 1.13.1 CentOS 7相关: https://www.cnblogs.com/ttkl/p/11041124 ...
- Docker搭建私有仓库
1,下载仓库镜像. docker pull registry //主要用于搭建私有仓库的. 2,将宿主机端口映射到容器中去,容器的5000端口是不能更改的. docker run -d -p ...
- 搭建私有仓库Harbor
搭建Harbor企业级docker仓库 搭建Harbor企业级docker仓库 一.Harbor简介 1.Harbor介绍 Harbor是一个用于存储和分发Docker镜像的企业级Registry ...
- docker 搭建私有云仓库
docker搭建私有仓库 registry私有仓库 下载docker-distribution软件包 yum install epel-release yum install docker-dis ...
- Kubernets二进制安装(5)之私有仓库harbor搭建
在IP地址为192.168.80.50,机器名为mfyxw50上搭建私有仓库harbor harbor下载地址: harbor下载连接地址:https://github.com/goharbor/ha ...
- Kubernetes-5:搭建企业级私有仓库Harbor
搭建企业级私有仓库Harbor 安装需求 python版本 >= 2.7 Docker引擎版本 >= 1.10 docker-compose版本 >= 1.6.0 安装环境 一.Py ...
- docker学习(8) 在mac机上搭建私有仓库
docker的私有仓库类似maven的私服,一般用于公司内部搭建一个类似docker hub的环境,这样上传.下载镜像速度较快,本文将演示如何在mac上利用docker-machine搭建无需SSL证 ...
随机推荐
- H5页面测试总结
前言 在最近几个项目中,小编接触了较多关于H5页面的测试,H5页面的测试除了业务逻辑功能测试外,其他部分的测试方法基本是可以通用的,在此对H5页面的一些通用测试方法进行总结分享给大家. H5页面介绍 ...
- Python面试题: 判断IP地址是否合法
题目: 给出一个字符串, 判断其是否是是合法的IP(IPv4)地址 思路 将字符串按"."分割成4段得到一个列表 逐个判断列表中的字符串是否数字格式并且在0~255之间, 是在新列 ...
- 在Postman脚本中发送请求(pm.sendRequest)
Postman的Collection(集合)/Folder(集合的子文件夹)/Request(请求)都有Pre-request script和Tests两个脚本区域, 分别可以在发送请求前和请求后使用 ...
- Mybatis源码学习之parsing包(解析器)(二)
简述 大家都知道mybatis中,无论是配置文件mybatis-config.xml,还是SQL语句,都是写在XML文件中的,那么mybatis是如何解析这些XML文件呢?这就是本文将要学习的就是,m ...
- 【洛谷2057】 [SHOI2007]善意的投票(最小割)
传送门 洛谷 Solution 比较巧妙啊! 考虑这个只有同意和不统一两种,所以直接令\(s\)表示选,\(t\)表示不选,然后在朋友直接建双向边就好了. 代码实现 #include<bits/ ...
- 使用docker部署mysql主从复制集群
一.环境搭建 虚拟机环境:centos7 IP: 启动3个容器,一个是master,端口是3307,另外两个是slaver,端口是3308和3309 docker pull mysql:5.7 doc ...
- H5-Mui框架——修改mui.confirm样式
问题简述: 使用mui框架默认提示框时,感觉与整体布局不符,因此想要更改其中的样式. 首先,查了一下资料:mui.toast样式风格及位置修改教程 以下是转载过来的文章内容. ============ ...
- koa 项目实战(八)生成token
1.安装模块 npm install jsonwebtoken --save 2.引用 const jwt = require('jsonwebtoken'); ... // 返回token cons ...
- storm java.io.NotSerializableException
今天编写一个storm的topology,bolt的逻辑跟之前的类似. 为了减少重复代码,我建了个抽象基类,存放bolt的公共逻辑,设计了几个abstract方法,不同的逻辑部分由子类实现. 基类日志 ...
- 9Patch图
NinePatch是一种很有用的PNG图片格式,它可以在特定区域随文字大小进行缩放. - 上边线控制水平拉伸- 左边线控制竖直拉伸- 右边线和下边线控制内容区域 如下: 背景图片的中间区域会随着文字的 ...