环境:
centos7、4G、2核、192.168.50.152
harbor版本
harbor-offline-installer-v2.1.5.tgz
开始安装部署
生成证书
mkdir -p /data/harbor_ssl/ #生成根证书 openssl req -newkey rsa:4096 -nodes -sha256 -keyout ca.key -x509 -days 365 -out ca.crt #生成服务器秘钥 openssl req -newkey rsa:4096 -nodes -sha256 -keyout reg.hub.com.key -out reg.hub.com.csr #生成服务器证书 openssl x509 -req -days 365 -in reg.hub.com.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out reg.hub.com.crt
修改配置文件
vim harbor.yml #需要修改的地方 hostname: reg.hub.com http: port: 80 https: port: 443 certificate: /data/harbor_ssl/reg.hub.com.crt private_key: /data/harbor_ssl/reg.hub.com.key harbor_admin_password: Harbor12345 data_volume: /data log: level: info local: rotate_count: 50 rotate_size: 200M location: /var/log/harbor
在解压后的harbor目录执行下面语句
./prepare
./install.sh
如果没报错那么说明启动起来了。
浏览器访问:https://reg.hub.com
说明:har是依赖于docker的,所以需要先装docker-ce,其次依赖于docker-compose,虽然现在版本会自动安装,但是建议安装好
curl -L https://github.com/docker/compose/releases/download/1.21.2/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose chmod +x /usr/local/bin/docker-compose
#查看是否安装成功
docker-compose -v
docker-compose的一些基本操作
#列出所有运行容器 docker-compose ps #查看服务日志输出 docker-compose logs #打印绑定的公共端口,下面命令可以输出 eureka 服务 8761 端口所绑定的公共端口 docker-compose port eureka 8761 #构建或者重新构建服务 docker-compose build #启动指定服务已存在的容器 docker-compose start eureka #停止已运行的服务的容器 docker-compose stop eureka #删除指定服务的容器 docker-compose rm eureka #构建、启动容器 docker-compose up #通过发送 SIGKILL 信号来停止指定服务的容器 docker-compose kill eureka #设置指定服务运行容器的个数,以 service=num 形式指定 docker-compose scale user=3 movie=3 #在一个服务上执行一个命令 docker-compose run web bash
注意:我们搭建的仓库是http访问的,docker CLI默认以HTTPS 访问仓库,所以要先配置可信任,否则pull镜像仓库失败。如果是HTTPS提供服务就不用配置
vim /etc/docker/daemon.json
{
"registry-mirrors": ["https://b9pmyelo.mirror.aliyuncs.com"],
"insecure-registries": ["reg.hub.com","reg2.hub.com"]
}
给镜像打tag并且push到harbor仓库
docker image tag nginx:1.12 reg.hub.com/zjj/nginx:1.12 docker push reg.hub.com/zjj/nginx:1.12