Docker镜像仓库Harbor实践
1,环境安装的软件及版本:
linux : version centos7.3
Docker:version 1.12.6
Docker-compose: version 1.13.0
Harbor: version 1.1.2
Harbor是基于docker registry V2版本,所以要求docker版本不小于1.10.0,docker-compose版本不小于1.8.0,centos7 yum安装docker就可以满足版本要求。
2,请自行安装centos7.3系统,设置好网络和防火墙
网络需要能访问外网,
vim /etc/sysconfig/network-scripts/ifcfg-eno16777736
TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
PEERDNS=no
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=eno16777736
UUID=71c2c872-0682-4d95-a1dd-ec478dbd9385
DEVICE=eno16777736
ONBOOT=yes
IPADDR=192.168.1.4
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=8.8.8.8
DNS2=114.114.114.114
设置完成后重启网路
systemctl restart network.service
下面关闭防火墙
setenforce 0
systemctl stop firewalld
systemctl disable firewalld
3,设置yum源和安装docker
cd /etc/yum.repos.d/
wget http://mirrors.aliyun.com/repo/Centos-7.repo
wget http://mirrors.aliyun.com/repo/epel-7.repo
yum -y install epel-release
yum install -y docker
安装成后修改配置文件
vim /etc/sysconfig/docker
此版本docker默认是开启容器的selinux,所以要注释掉之前的
注释掉其他项,然后添加下面一句,IP为虚拟机的网络IP地址
OPTIONS='--insecure-registry 192.168.1.4'
启动docker
systemctl start docker
docker pull busybox 下载busybox镜像
docker images
4,安装docker-compose
cd /usr/local/bin/
curl -L https://github.com/docker/compose/releases/download/1.13.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
下载完成后添加执行权限
chmod +x /usr/local/bin/docker-compose
接着检查安装的版本是否成功
docker-compose --version
docker-compose version 1.13.0, build 1719ceb
看到版本正是1.13,这个版本可以选择很多,比如新的1.17.0版本就可以用下载的命令
curl -L https://github.com/docker/compose/releases/download/1.17.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
命令docker-compose down -v 停止harbor服务
docker-compose up -d 启动harbor服务
5,安装harbor服务
可以登录到GitHub上选择可用的版本,最新的是1.3.0,建议用一个老一点的版本1.1或者1.2。
https://github.com/vmware/harbor/releases?after=v1.2.0-rc3
下载离线版
cd /usr/local/
wget https://github.com/vmware/harbor/releases/download/v1.1.2/harbor-offline-installer-v1.1.2.tgz
tar zxf harbor-offline-installer-v1.1.2.tgz
进入目录修改配置
cd harbor/
vim harbor.cfg
#只需修改hostname的ip即可,其他可以保持默认,默认登录密码Harbor12345
hostname = 192.168.1.4
ui_url_protocol = http
db_password = root123
max_job_workers = 3
customize_crt = on
ssl_cert = /data/cert/server.crt
ssl_cert_key = /data/cert/server.key
secretkey_path = /data
admiral_url = NA
email_identity =
email_server = smtp.mydomain.com
email_server_port = 25
email_username = sample_admin@mydomain.com
email_password = abc
email_from = admin <sample_admin@mydomain.com>
email_ssl = false
harbor_admin_password = Harbor12345
auth_mode = db_auth
ldap_url = ldaps://ldap.mydomain.com
ldap_searchdn = uid=searchuser,ou=people,dc=mydomain,dc=com
ldap_search_pwd = password
ldap_basedn = ou=people,dc=mydomain,dc=com
ldap_filter = (objectClass=person)
ldap_uid = uid
ldap_scope = 3
ldap_timeout = 5
self_registration = on
token_expiration = 30
project_creation_restriction = everyone
verify_remote_cert = on
修改好配置文件后执行
./install.sh
harbor服务根据docker-compose.yml配置下载镜像和启动服务
用docker images 查看下载的镜像
用docker-compose ps 查看服务启动情况
启动正常, 用浏览器访问http://192.168.1.4,默认是80端口
(如果80端口已经被其他服务占用,可以修改docker-compose.yml文件中对应的端口映射)
登陆后界面
新建项目test,非公开
新建项目后,回到服务器上,用admin用户提交镜像到harbor的镜像仓库中,下面以busybox为例:
第一步,登录 docker login 192.168.1.4 用admin,密码Harbor12345
Username (admin): admin
Password:
Login Succeeded
第二步,给镜像打项目标签tag
docker tag docker.io/busybox 192.168.1.4/test/busybox:latest
第三步,push到仓库
docker push 192.168.1.4/test/busybox
完成后回到前端页面,就可以查看到镜像已经在test项目下了
本文转自super李导51CTO博客,原文链接: http://blog.51cto.com/superleedo/2051333,如需转载请自行联系原作者

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
企业私有云应用之使用OZ制作openstack镜像
最近工作忙,好久没写博客,现在正好有空介绍一下我这里使用私有云的经验。 现在分享一下如何使用oz自动化制作openstack镜像,下面有我自己制作centos 6.4 6.5 6.7 7.2与ubuntu 12.04.5与14.04.4的模板,模板也存放到github里,地址是https://github.com/dl528888/oz_create_openstack_image_templates。 之前使用镜像要不使用别人做好的,要不是自己制作,但很麻烦,现在使用oz可以简化操作,定制一个模板(类似cobbler)的就可以自动化制作了,十分方便。 官方地址是https://github.com/clalancette/oz/ 下面是介绍如何安装 1、安装epel源 1 2 rpm-ivhhttp: //mirrors .sohu.com /fedora-epel/6/x86_64/epel-release-6-8 .noarch.rpm yum install -yoz 如果还是没有生效,可以使用下面的配置在安装 1 2 3 4 5 6 7 8 9 [epel] name=Ext...
- 下一篇
Linux基础之bash脚本进阶篇-数组
数组 什么是数组? 计算机中的数组指的是具有相同类型的若干变量按照一定的顺序组织起来的一种数据类型。 通俗点来说数组就是变量的一种,按现在的术语来说就是变量圈子中的一个,只不过这个变量圈子都是相同类型的变量并有一定的组织顺序。 数组的格式 array[key]=value array:表示数组变量的名称 key:表示数组元素的索引又称下标 value:表示key对应的数组元素的值 大体了解了什么是数组,下面就来了解下如何定义数组或如何创建数组 定义数组 定义数组主要有如下几种类型 1、通过指定元素来定义数组 1 2 3 4 5 6 7 #!/bin/bash #通过指定元素来定义数组 #指定数组元素值 array[0]=8 array[2]=two #输出数组元素 echo "${array[@]}" 运行脚本 1 2 [root@docker test ] #sh20160910-1 8two 2、通过declare语句来定义数组 1 2 3 4 5 6 7 8 9 #!/bin/bash #通过declare语句来定义数组 #定义数组-a选项表示后面定义的是一个名为array的数组...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- CentOS8编译安装MySQL8.0.19
- CentOS8安装Docker,最新的服务器搭配容器使用
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- SpringBoot2整合Redis,开启缓存,提高访问速度
- Mario游戏-低调大师作品
- Docker安装Oracle12C,快速搭建Oracle学习环境
- CentOS7安装Docker,走上虚拟化容器引擎之路
- CentOS6,7,8上安装Nginx,支持https2.0的开启