天天看点

Centos 安装harbor

服务器版本: CentOS Linux release 7.6.1810 (Core)

一、准备工作

1.上传软件包到/usr/local/software/harbor服务器路径(路径可自定义)

mkdir -p /usr/local/software/harbor
           
Centos 安装harbor

2.关闭防火墙,关闭selinux

临时并永久关闭防火墙
systemctl stop firewalld && systemctl disable firewalld
临时并永久关闭selinux
setenforce 0 && sed -i 's/^SELINUX=.*/SELINUX=disabled/' /etc/selinux/config
           
使用harbor要先安装docker及docker-compose
docker安装教程请参考 https://blog.51cto.com/u_15418847/4759907
           

二、安装docker-compose

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

复制到到/usr/local/bin/目录之后即安装完成:
cp /usr/local/software/harbor/docker-compose /usr/local/bin

查看docker-compose版本
docker-compose --version
           

三、安装harbor

1.创建https证书

# 创建证书目录,并赋予权限
mkdir -p /cert/harbor
chmod -R 777 /cert/harbor
cd /cert/harbor

# whereis openssl 检查是否有安装openssl,如果没有先安装openssl组件,如果有就不用安装了
whereis openssl
yum install openssl

# 创建服务器证书密钥文件harbor.key
openssl genrsa -des3 -out harbor.key 2048
# 输入MiMa,确认MiMa,自己随便定义,但是要记住,后面会用到。

# 创建服务器证书的申请文件harbor.csr
openssl req -new -key harbor.key -out harbor.csr
# 输入密钥文件的MiMa, 参考下图

# 备份一份服务器密钥文件
cp harbor.key harbor.key.org

# 去除文件口令
openssl rsa -in harbor.key.org -out harbor.key
# 输入密钥文件的MiMa

# 创建一个自当前日期起为期十年的证书 harbor.crt
openssl x509 -req -days 3650 -in harbor.csr -signkey harbor.key -out harbor.crt
           
Centos 安装harbor

2.解压安装包,修改配置文件

cd /usr/local/software/harbor
tar -zxvf harbor-offline-installer-v2.2.0.tgz
解压之后有这些目录
           
Centos 安装harbor
修改配置文件
提前创建好harbor的数据目录和日志目录
cd /usr/local/software&& mkdir harbor-data
cd /usr/local/software&& mkdir harbor-log
cd /usr/local/software&& chmod -R 777 harbor-data
cd /usr/local/software&& chmod -R 777 harbor-log

cd /usr/local/software/harbor/harbor&& cp harbor.yml.tmpl harbor.yml
vim harbor.yml

# 将hostname改成本机IP或域名,不要用localhost,127.0.0.1或0.0.0.0,冒号后面都有一个空格
hostname: 172.10.6.56
# 将http端口改成10080,因为默认用的80端口已经被占用,http可以指定任意端口
http:
  port: 10080
# 配置https的端口,只能使用443端口,更改证书路径,证书路径为刚刚生成的https证书的实际路径
https:
  port: 443
  certificate: /cert/harbor/harbor.crt
  private_key: /cert/harbor/harbor.key
# 修改后台管理MiMa
harbor_admin_password: harbor12345
# harbor的内部数据库MiMa
database:
  password: root123
# 修改harbor数据存储路径与日志存储路径,目录要先创建好并赋予777权限
data_volume: /usr/local/software/harbor-data
# 修改日志存放路径,默认路径为/var/log/harbor
log:
  local:
    localtion: /usr/local/software/harbor-log

主要配置如下图
           
Centos 安装harbor
Centos 安装harbor

3.执行安装脚本

cd /usr/local/software/harbor/harbor&& sh install.sh
执行成功如下
           

4.浏览器访问

浏览器访问:https://172.10.6.56/
账号:admin
MiMa:Abc123
           

5.docker信任配置

要让docker可以访问harbor,需要将harbor域名或IP设置为docker的受信任仓库
修改配置文件 /etc/docker/daemon.json ,增加docker受信任IP或域名

vim /etc/docker/daemon.json(所有节点)
{
    "insecure-registries": ["172.10.6.56:443"]
}



拷贝https证书文件harbor.crt到 /etc/docker/certs.d/serverIp 文件夹。、
如果是集群,每个节点都要拷贝证书文件

mkdir -p /etc/docker/certs.d/172.10.6.56
cp /cert/harbor/harbor.crt  /etc/docker/certs.d/172.10.6.56/ca.crt
#注意,拷贝过去的证书文件名为 ca.crt 


在其他节点机器执行
mkdir -p /etc/docker/certs.d/172.10.6.56

在部署harbor的机器执行
scp /cert/harbor/harbor.crt root@IP:/etc/docker/certs.d/172.10.6.56/ca.crt


#重启docker
systemctl daemon-reload
systemctl restart docker

重启harbor
cd /usr/local/software/harbor/harbor
./prepare
docker-compose down
docker-compose up -d
           

6.登录harbor

docker login 172.10.6.56:443 -u 用户名 -p MiMa
           

参考

https://www.cnblogs.com/yyee/p/13121272.html