docker 私有库

 参考文档:https://github.com/WingkaiHo/docker-calico/blob/master/harbor/README.md

 

1、HarborV1.6.0-RC1

Docker容器应用的开发和运行离不开可靠的镜像管理,虽然Docker官方也提供了公共的镜像仓库,但是从安全和效率等方面考虑,部署我们私有环境内的Registry也是非常必要的。Harbor是由VMware公司开源的企业级的Docker Registry管理项目,它包括权限管理(RBAC)、LDAP、日志审核、管理界面、自我注册、镜像复制和中文支持等功能。

  1.1、系统环境

CentOS 7.4
Python version:>=2.7
Docker version:>=1.10
Docker Compose version:>=1.6.0 
Openssl:直接yum安装最新版本即可
(# yum -y install openssl openssl-devel)

  1.2、安装docker

(官方推荐安装方法,也可直接docker安装,快!!!)

1、CentOS 7 自带Python版本2.7,不必更新Python
2、安装Docker(根据自己实际需求,下列安装方式二选一即可)
    1) 安装Docker ce (官方链接:https://docs.docker.com/install/linux/docker-ce/centos/)

    卸载原来的Docker(如果以前没安装过,略过此步骤即可)
    $ sudo yum remove docker \
              docker-client \
              docker-client-latest \
              docker-common \
              docker-latest \
              docker-latest-logrotate \
              docker-logrotate \
              docker-selinux \
              docker-engine-selinux \
              docker-engine 

    devicemapper存储驱动依赖于yum-utils、device-mapper-persistent-dat and lvm2
    $ sudo yum install -y yum-utils \
        device-mapper-persistent-data \
        lvm2

    添加Docker官方yum源    
    $ sudo yum-config-manager \
        --add-repo \
        https://download.docker.com/linux/centos/docker-ce.repo

    安装Docker ce    
    $ sudo yum install docker-ce

或(二选一)

2) 安装Docker engine

    添加yum源
    # cat <<EOF>/root/docker.repo \
    > name=Docker
    > baseurl=https://yum.dockerproject.org/repo/main/centos/7/
    > enabled=1
    > gpgcheck=0
    > EOF

    安装Docker engine
    # yum -y install docker-engine-1.13.1
View Code

 1.3、安装Docker Compose

compose是一个定义和运行多容器的docker应用的工具。compose 通过yaml文件配置应用服务,然后仅需一个命令就可以创建和运行所有配置中的服务。

版本发布地址:https://github.com/docker/compose/releases

#下载Docker Compose二进制可执行文件
curl -L https://github.com/docker/compose/releases/download/1.20.0/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose

#添加可执行权限
chmod +x /usr/local/bin/docker-compose

#测试是否安装成功

[root@slave src]# docker-compose --version
docker-compose version 1.22.0, build f46880fe

  1.4、下载Harbor安装文件

1)下载Harbor安装文件 
从 github harbor 官网 release 页面下载指定版本的安装包。
1、在线安装包
    $ wget https://github.com/goharbor/harbor/archive/v1.6.0-rc1.tar.gz
    $ tar xvf v1.6.0-rc1.tar.gz
2、离线安装包
    $ wget https://storage.googleapis.com/harbor-releases/release-1.6.0/harbor-offline-installer-v1.6.0-rc2.tgz
    $ tar xvf harbor-offline-installer-v1.6.0-rc2.tgz

  1.5、生成访问harbor时的密钥证书

1、创建证书存放目录
mkdir -p /data/cert
cd /data/cert/

2 、创建 CA 根证书
openssl req  -newkey rsa:4096 \
-nodes -sha256 -keyout ca.key -x509 -days 365 \
-out ca.crt -subj "/C=CN/L=shanghai/O=baoshan/CN=harbor-registry"

3 、生成一个证书签名, 设置访问域名为 [你的域名]
openssl req -newkey rsa:4096 \
-nodes -sha256 -keyout server.key \
-out server.csr -subj "/C=CN/L=shanghai/O=baoshan/CN=docker-hub.onechain.com"

4、 生成主机的证书
openssl x509 -req -days 365 \
-in server.csr -CA ca.crt -CAkey ca.key \
-CAcreateserial -out server.crt

  1.6、修改harbor配置文件

hostname = docker-hub.onechain.com           # 指定私有仓库的主机名,可以是IP地址,也可以是域名   
ui_url_protocol = https                                 # 用户访问私仓时使用的协议,默认时http,配置成https
db_password = root123                            # 指定mysql数据库管理员密码
harbor_admin_password:Harbor12345          # harbor的管理员账户密码
ssl_cert = /data/cert/server.crt                 # 设置证书文件路径
ssl_cert_key = /data/cert/server.key              # 设置证书密钥文件路径

 

  1.7、通过自带脚本一键安装(在harbor目录下)

[root@harbor harbor]# ./prepare
[root@harbor harbor]# ./install.sh

  1.8、防火墙设置( 开启80/443端口)

firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --zone=public --add-port=443/tcp --permanent
firewall-cmd --reload
firewall-cmd --query-port=80/tcp
firewall-cmd --query-port=443/tcp
firewall-cmd --list-all

    1.9、docker-compose的停止、启动

启动Harbor
# docker-compose start
停止Harbor
# docker-comose stop
重启Harbor
# docker-compose restart

 

    1.10、访问结果

[提前设置本地 hosts文件本地重定向至harbor服务器IP ]
vi /etc/hosts
添加
127.0.0.1    localhost docker-hub.onechain.com


https://docker-hub.onechain.com
用户默认为admin
密码默认为Harbor12345  [可通过安装前 harbor.cfg 配置文件修改 harbor_admin_password 指定 ]

 

2、harbor使用

 https://www.cnblogs.com/pangguoping/p/7650014.html

#修改参数

[root@docker ~]# cat /etc/docker/daemon.json
{ "insecure-registries": ["10.10.10.61"] }
[root@docker ~]#


#上传镜像 docker login
10.10.10.61 docker tag yanqi/python-ssh:v1 10.10.10.61/nginx/python-ssh:v3 docker push 10.10.10.61/nginx/python-ssh:v3 #下载镜像 [root@docker ~]# docker pull 10.10.10.61/nginx/python-ssh:v3

 

 

3、官方使用说明

https://github.com/goharbor/harbor/blob/release-1.6.0/docs/user_guide.md

 

 

 

 

FAQ

1、查看博文

  https://blog.csdn.net/kq425/article/details/80288169

     https://blog.csdn.net/mimica247706624/article/details/80182751

 

posted @ 2018-09-01 21:17  无敌仙人掌  阅读(44)  评论(0编辑  收藏  举报
AmazingCounters.com