使用Harbor搭建Docker私有仓库

ip:192.168.0.145

环境设置
防火墙,selinux等,可以使用本章开头的那个shell脚本

其他主机的hosts文件也都添加上
ip hub.aaa.com

windows系统的hosts也修改

安装docker,启动,开机启动
其他主机也都加上这个

vim /etc/docker/daemon.json

{
    "exec-opts": ["native.cgroupdriver=systemd"],
    "log-driver": "json-file",
    "log-opts": {
        "max-size": "100m"
    },
    "insecure-registries": ["https://hub.aaa.com"] # 仓库地址
}

添加后重启docker

下载配置docker-compose
官方地址:https://docs.docker.com/compose/install/

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
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
docker-compose --version

下载harbor软件
官方地址:https://github.com/goharbor/harbor/releases
官方说明文档:https://github.com/goharbor/harbor/blob/master/docs/installation_guide.md
证书文档:https://github.com/goharbor/harbor/blob/master/docs/configure_https.md

wget https://storage.googleapis.com/harbor-releases/release-1.9.0/harbor-offline-installer-v1.9.0.tgz
tar -zxv -f harbor-offline-installer-v1.9.0.tgz -C /usr/local/
cd /usr/local/harbor
vim harbor.yml

# 可以使用80端口或443端口
hostname: hub.aaa.com
https:
   port: 443
   certificate: /usr/local/harbor/cert
   private_key: /usr/local/harbor/cert
# 其余保持默认
# 创建上述俩目录
mkdir -p /usr/local/harbor/cert/

# 创建整数
cd /usr/local/harbor/cert
openssl genrsa -out ca.key 4096

# 这一步注意域名,其他信息比如地区城市等可以酌情修改
openssl req -x509 -new -nodes -sha512 -days 3650     -subj "/C=TW/ST=Taipei/L=Taipei/O=example/OU=Personal/CN=hub.aaa.com"     -key ca.key     -out ca.crt

openssl genrsa -out hub.aaa.com.key 4096

openssl req -sha512 -new     -subj "/C=TW/ST=Taipei/L=Taipei/O=example/OU=Personal/CN=hub.aaa.com"     -key hub.aaa.com.key     -out hub.aaa.com.csr

cat > v3.ext <<-EOF
authorityKeyIdentifier=keyid,issuer
basicConstraints=CA:FALSE
keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment
extendedKeyUsage = serverAuth
subjectAltName = @alt_names

[alt_names]
DNS.1=hub.aaa.com
EOF

openssl x509 -req -sha512 -days 3650     -extfile v3.ext     -CA ca.crt -CAkey ca.key -CAcreateserial     -in hub.aaa.com.csr     -out hub.aaa.com.crt

chmod a+x *

# 再次编辑配置文件,配置上证书
vim /usr/local/harbor/harbor.yml

   certificate: /usr/local/harbor/cert/hub.aaa.com.crt
   private_key: /usr/local/harbor/cert/hub.aaa.com.key

# 校验
cd /usr/local/harbo
./prepare

# 安装
./install.sh

# 安装之后的提示
Creating network "harbor_harbor" with the default driver
Creating harbor-log ... done
Creating redis         ... done
Creating registry      ... done
Creating harbor-portal ... done
Creating harbor-db     ... done
Creating registryctl   ... done
Creating harbor-core   ... done
Creating harbor-jobservice ... done
Creating nginx             ... done

? ----Harbor has been installed and started successfully.----

Now you should be able to visit the admin portal at https://hub.aaa.com.
For more details, please visit https://github.com/goharbor/harbor .

# 查看
docker ps -a

# 打开浏览器访问https://hub.aaa.com
# 用户名:admin
# 密码:Harbor12345
# 可以在harbor.yml文件中查看修改

# 其他K8S节点登陆验证
docker login https://hub.aaa.com
Username: admin
Password:
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

# 退出登陆
docker logout https://hub.aaa.com

测试

# 其他节点主机下载镜像推送到仓库,使用的是一个测试的镜像
docker pull wangyanglinux/myapp:v1

# web页面,项目,library,镜像仓库,右上角有一个推送镜像:
# 在项目中标记镜像:docker tag SOURCE_IMAGE[:TAG] hub.aaa.com/library/IMAGE[:TAG]
# 推送镜像到当前项目:docker push hub.aaa.com/library/IMAGE[:TAG]

# 给镜像重新打标签
docker tag wangyanglinux/myapp:v1 hub.aaa.com/library/myapp:v1

# 需要先登陆,然后才能push
docker push hub.aaa.com/library/myapp:v1

# 此时在web界面就可以查看到推送过来的镜像

原文地址:https://www.cnblogs.com/sanduzxcvbnm/p/11636827.html

时间: 2024-11-05 17:17:48

使用Harbor搭建Docker私有仓库的相关文章

搭建docker私有仓库

安装Docker Docker的安装请参考官网(http://www.docker.com),非常详细的介绍了各个操作系统的部署过程. 对于CentOS 7.x操作系统的在线安装Docker,请参考如下:https://docs.docker.com/engine/installation/linux/centos 搭建Docker私有仓库 Docker官方提供了一个公有的registry叫做Docker Hub.但是企业内部可能有些镜像还是不方便放到公网上去,所以docker也提供了regis

CentOS7搭建Docker私有仓库

学习Docker的过程中Docker的私有仓库一直没能成功,就是因为CentOS 6.x和CentOS 7默认引入了支持https认证,每次在push和pull的时候都会报错,今天是周末,利用一天的时间反复测试和网上案列的整合,总算是成功了,也借此 机会对学习Docker的朋友有所帮助. 个人的愚见:博友在练习的时候建议用CentOS 7.x系统,不建议用CentOS 6.x系统 一.准备 地址规划: Docker私有仓库地址:192.168.0.109 Docker客户端地址:192.168.

CentOS 7搭建Docker私有仓库

学习Docker的过程中Docker的私有仓库一直没能成功,就是因为CentOS 6.x和CentOS 7默认引入了支持https认证,每次在push和pull的时候都会报错,今天是周末,利用一天的时间反复测试和网上案列的整合,总算是成功了,也借此机会对学习Docker的朋友有所帮助. 个人的愚见:博友在练习的时候建议用CentOS 7.x系统,不建议用CentOS 6.x系统 一.准备 地址规划: Docker私有仓库地址:192.168.0.109 Docker客户端地址:192.168.0

手把手教你搭建Docker私有仓库

章节一:centos7 docker安装和使用_入门教程 章节二:使用docker部署Asp.net core web应用程序 有了前面的基础,接下来的操作就会比较简单了. 先准备两台虚拟机: Docker客户端:192.168.1.160 Docker私有仓库服务器:192.168.1.161 两台机器上都配好yum源,安装好docker,设置好docker加速器 1.在服务端192.168.1.161上拉取仓库镜像:registry [[email protected] ~]# docker

ubuntu16.04搭建docker私有仓库

ubuntu:16.04 docker:18.06.0 docker仓库服务器:192.168.83.102 docker测试客户端:192.168.83.101 --------------------------------------分割线-------------------------------------- 首先按照官网安装好docker:https://docs.docker.com/install/linux/docker-ce/ubuntu/ 安装好docker之后首先pul

centos下搭建docker私有仓库

目前Docker Registry已经升级到了v2,最新版的Docker已不再支持v1.Registry v2使用Go语言编写,在性能和安全性上做了很多优化,重新设计了镜像的存储格式.此文档是在v1的基础上写的,如果需要安装registry v2,只需下载registry:2.2即可,或者可以下载后面的安装脚本运行安装. 一.下载registry镜像 docker pull registry 二.启动私有仓库容器,默认情况下,会将仓库存放于容器内的/tmp/registry目录下,这样如果容器被

Docker入门-搭建docker私有仓库

Docker Hub 目前Docker官方维护了一个公共仓库Docker Hub,其中已经包括了数量超过15000个镜像.大部分需求都可以通过在Docker Hub中直接下载镜像来使用. 注册登录 可以在https://hub.docker.com 免费注册一个Docker账号.在命令行执行docker login输入用户名及密码来完成在命令行界面登记Docker Hub.你可以通过docker logout退出登录. 拉取镜像 可以通过docker search命令来查找官方仓库中的镜像,并利

CentOS 搭建docker私有仓库实践

前言 由于目前大多数的镜像下载网站都是在国外站点,国内用户在下镜像的时候就时常遇到下载速度超慢的情况:而且在将Docker应用到生产环境的过 程中,还会面临下载过来的Docker镜像是否安全的问题. 因些在生产环境下搭建私有的Docker Registry,就是一个一举二得的方案了.但目前国内的大多数企业使用的发行版,为Redhat体系,其中又以Centos环境居多.而网上的资料和出版的书籍在介绍Docker的时候都是以ubuntu为基础进行讲解和配置,而CentOS6.x以上版本访问私有的 D

搭建docker私有仓库(用户认证、web管理)

ubuntu:16.04 docker:18.06.0-ce docker仓库服务器:192.168.83.102 --------------------------------------分割线-------------------------------------- 1.生成私钥和证书 mkdir conf openssl req -new -newkey rsa:4096 -days 365 -subj "/CN=localhost" -nodes -x509 -keyout