十六、企业级私有仓库harbor
系列导航
创建企业级私有仓库:
第一步 安装docker和docker-compose
注:docker安装见文档前面的内容
安装docker-compose
1、先查看源是否存在
[root@node01 ~]# ls /etc/yum.repos.d
CentOS-Base.repo epel.repo
docker源wegt https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo
Centos-6源:wget http://mirrors.aliyun.com/repo/Centos-6.repo
epel源:wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo
可是使用如下语句直接下载到指定路径
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
2、安装docker-compose
[root@localhost ~]
# yum -y install epel-release
[root@localhost ~]# yum -y install python-pip
[root@localhost ~]# pip --version # 查看版本
pip 8.1.2 from /usr/lib/python2.7/site-packages (python 2.7)
注:pip版本太低需要升级使用如下:
python -m pip install --upgrade pip -i https://pypi.tuna.tsinghua.edu.cn/simple/
[root@localhost ~]# pip install -i https://pypi.tuna.tsinghua.edu.cn/simple docker-compose
docker-compose --version#查看版本
注:
如果是二进制包方式安装的,删除二进制文件即可。
$ sudo rm /usr/local/bin/docker-compose
如果是通过 pip 安装的,则执行如下命令即可删除。
$ sudo pip uninstall docker-compose
第二步 下载harbor
下载地址:http://harbor.orientsoft.cn/
压缩包放到/opt下
解压:[root@node01 opt]# tar xf harbor-offline-installer-v1.5.0.tgz
解压后:[root@node01 opt]# cd harbor
第三步 修改配置文件
[root@node01 harbor]# pwd
/opt/harbor
[root@node01 harbor]# ls
common docker-compose.clair.yml docker-compose.notary.yml docker-compose.yml ha harbor.cfg harbor.v1.5.0.tar.gz install.sh LICENSE NOTICE prepare
[root@node01 harbor]# vi harbor.cfg
修改如下两个参数,第一个参数为当前主机的ip,第二个参数为管理密码(密码随意设置)
hostname = 172.25.131.101
harbor_admin_password = 123456
第四步 安装
安装前删除现有的所有容器避免冲突
docker rm -f `docker ps -a -q`
[root@node01 harbor]# ./install.sh
第五步 登录页面
登录页面
http://172.25.131.101
用户名:admin 密码:前面设置的
第六步 使用
1、想要上传需要添加信任,修改docker的配置文件
[root@node01 harbor]# vi /etc/docker/daemon.json
只要ip 端口默认80
{
"insecure-registries":["172.25.131.101"]
}
重启docker服务使配置生效
[root@node01 opt]# systemctl restart docker
3、上传
上传之前需要先登录
[root@node01 harbor]# docker login 172.25.131.101
Username: admin
Password:
然后打标签,在上传
[root@node01 harbor]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
nginx latest 6678c7c2e56c 13 days ago 127MB
[root@node01 harbor]# docker tag nginx:latest 172.25.131.101/library/nginx:latest
[root@node01 harbor]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
172.25.131.101/library/nginx latest 6678c7c2e56c 13 days ago 127MB
[root@node01 harbor]# docker push 172.25.131.101/library/nginx:latest
The push refers to repository [172.25.131.101/library/nginx]
55a77731ed26: Pushed
71f2244bc14d: Pushed
f2cb0ecef392: Pushed
latest: digest: sha256:3936fb3946790d711a68c58be93628e43cbca72439079e16d154b5db216b58da size: 948
4、下载
下载不需要登录
下载前先删除本地相同的镜像
[root@node03 ~]# docker image rm -f c7460dfcab50
[root@node03 ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
[root@node03 ~]# docker pull 172.25.131.101/library/nginx:latest
latest: Pulling from library/nginx
68ced04f60ab: Pull complete
28252775b295: Pull complete
a616aa3b0bf2: Pull complete
[root@node03 ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
172.25.131.101/library/nginx latest 6678c7c2e56c 13 days ago 127MB
5、访问级别为“公开”上传需要登录,下载不需要登录
访问级别不是公开的就是私有的,上传下载都需要登录。
6、仓内管理里可以设置主从的集群