[Docker] Harbor 私有仓库配置方法

一、背景简介

      Docker 仓库是 Docker 生态的重要组成部分,Docker Hub 上发布了大量满足各种需求的镜像

      在公司环境下,往往需要打造自己的私有仓库,满足公司内部容器平台需求

      Docker 官方提供了 Docker Registry 镜像,能够满足一般的镜像存取需求

      而更为强大的则是 VmWare 推出的 Harbor,相比官方 Registry,在用户管理等方面更为完备

二、部署方法

2.1  实验环境

      CentOS Linux release 7.1.1503 64位

      Docker 1.12.6  安装方法点 这里

2.2  安装 Docker Compose

      下载二进制文件 docker-compose,直接放到 /usr/bin/ 目录,并赋予执行权限

$ sudo curl -L https://github.com/docker/compose/releases/download/1.21.0/docker-compose-$(uname -s)-$(uname -m) -o /usr/bin/docker-compose
$ sudo chmod +x /usr/bin/docker-compose

2.3  下载 harbor 

       下载地址:https://github.com/vmware/harbor/releases

        这里下载的是 离线安装包 harbor-offline-installer-v1.4.0.tgz

2.4   安装 harbor

        解压即可

# tar xvf harbor-offline-installer-v1.4.0.tgz

2.5   编辑 harbor 配置项

# cd <你的 Harbor 解压路径>
# vim harbor.cfg

        修改 hostname 为你的主机 IP;更丰富的配置请参照官方说明:

        https://github.com/vmware/harbor/blob/master/docs/installation_guide.md

        下面附上我的配置例子 (只改了 hostname ^_^):

## Configuration file of Harbor

#The IP address or hostname to access admin UI and registry service.
#DO NOT use localhost or 127.0.0.1, because Harbor needs to be accessed by external clients.
hostname = 192.168.12.129

... ...

2.6   启动 Harbor

# ./install

       

2.7   访问 UI

        浏览器访问 http://192.168.12.129    输入用户名/密码 : admin/Harbor12345

       

2.8   推送镜像的客户端需要配置下,启用 http 连接方式,默认 https

       方法一:

       修改 docker service 启动参数

# vim /lib/systemd/system/docker.service

       在 ExecStart=/usr/bin/dockerd 后追加 --insecure-registry 参数

ExecStart=/usr/bin/dockerd --insecure-registry=192.168.12.129

       方法二:

       编辑 /etc/docker/daemon.json (没有就创建一个)

{
    "insecure-registries": ["192.168.12.129"]
}

        配置完成后,重启 docker 服务,使其生效

# systemctl daemon-reload  
# systemctl restart docker  

2.9   客户端 推送镜像到 Harbor

# docker login 192.168.12.129   <输入用户名密码 admin/Harbor12345>
# docker tag ubuntu:14.04 192.168.12.129/library/ubuntu:14.04
# docker push 192.168.12.129/library/ubuntu:14.04

2.10  额外配置

        如果希望启用域名,可以将 IP 地址全部改成对应的域名,

        在 hosts 文件中配置域名对应的IP 为 192.168.12.129 即可

# vim /etc/hosts
192.168.12.129 ctsi.io
ExecStart=/usr/bin/dockerd --insecure-registry=ctsi.io
{
    "insecure-registries": ["ctsi.io"]
}
# docker login ctsi.io  <输入用户名密码 admin/Harbor12345>
# docker tag ubuntu:14.04 ctsi.io/library/ubuntu:14.04
# docker push ctsi.io/library/ubuntu:14.04

猜你喜欢

转载自blog.csdn.net/shida_csdn/article/details/79970544