在centos7.6上安装docker私有仓库软件harbor2.0版本(2020年5月19日最新版本)。
harbor是靠docker-compose编排的,而docker-compose又靠docker运行,所以我们要先装docker,再装docker-compose。其中docker最好装docker-ce版。
1.关闭防火墙、修改主机名
systemctl stop firewalld
systemctl disable firewalld
setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
hostnamectl set-hostname harbor.hiibm.com
2.安装docker-ce
yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum install docker-ce -y
systemctl start docker
systemctl enable docker
docker -v
3.安装docker-compose
curl -L "https://github.com/docker/compose/releases/download/1.23.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
docker-compose version
1.下载harbor离线包
可以去https://github.com/goharbor/harbor/releases找到合适的版本下载,或者直接使用这个地址https://github.com/goharbor/harbor/releases/download/v2.0.0/harbor-offline-installer-v2.0.0.tgz 用迅雷把它下载下来再传到centos上。
或者直接在centos上使用命令下,不过这过程比较慢,这玩意478M左右。
wget -P /usr/local/src/ https://github.com/goharbor/harbor/releases/download/v2.0.0/harbor-offline-installer-v2.0.0.tgz
2.解压harbor压缩包
tar -zxvf /usr/local/src/harbor-offline-installer-v2.0.0.tgz -C /usr/local
cd /usr/local/harbor/
3.给harbor写配置文件
注释:
● hostname写上你要访问的harbor的地址当主机名。
● certificate和private_key是支持HTTPS访问的证书的路径,文件名最好和主机名对应,便于记忆。
● harbor_admin_password是默认的harbor登录的密码
● database-password我猜是默认的harbor数据库密码,默认的是root123,建议改掉。
● data_volume 是数据默认存放目录,即harbor的docker持久化目录默认放在了/data下。
cat > /usr/local/harbor/harbor.yml <
4.给harbor创建SSL证书
● 安装openssl证书工具
yum install -y openssl
● 创建证书存放文件夹
mkdir /usr/local/harbor/certs
cd /usr/local/harbor/certs
● 生成无加密的根证书私钥(注意一定要进到证书目录)
openssl genrsa -out ca.key 4096
● 使用刚才生成的私钥制作自签名证书(将这里的harbor.hiibm.com替换成你的域名即可)
openssl req -x509 -new -nodes -sha512 -days 3650 -subj "/C=CN/ST=Beijing/L=Beijing/O=harbor.hiibm.com/OU=harbor.hiibm.com/CN=harbor.hiibm.com" -key ca.key -out ca.crt
● 生成服务器端自己域名的key(将这里的harbor.hiibm.com替换成你的域名即可)
openssl genrsa -out harbor.hiibm.com.key 4096
● 生成服务器端自己域名的CSR签名请求(将这里的harbor.hiibm.com替换成你的域名即可)
openssl req -sha512 -new -subj "/C=CN/ST=Beijing/L=Beijing/O=harbor.hiibm.com/OU=harbor.hiibm.com/CN=harbor.hiibm.com" -key harbor.hiibm.com.key -out harbor.hiibm.com.csr
● 生成一个 openssl 命令需要的外部配置文件 xexternalfile.ext
(将这里的harbor.hiibm.com替换成你的域名即可)
cat > xexternalfile.ext <<-EOF
authorityKeyIdentifier=keyid,issuer
basicConstraints=CA:FALSE
keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment
extendedKeyUsage = serverAuth
subjectAltName = @alt_names
[alt_names]
DNS.1=harbor.hiibm.com
EOF
● 通过外部配置文件 xexternalfile.ext
和 csr 生成 crt(将这里的harbor.hiibm.com替换成你的域名即可)
openssl x509 -req -sha512 -days 3650 -extfile xexternalfile.ext -CA ca.crt -CAkey ca.key -CAcreateserial -in harbor.hiibm.com.csr -out harbor.hiibm.com.crt
● 将服务端的 crt 转换成客户端用的 cert(将这里的harbor.hiibm.com替换成你的域名即可)
openssl x509 -inform PEM -in harbor.hiibm.com.crt -out harbor.hiibm.com.cert
5.预编译harbor (这个过程可能会需要十来分钟,因为要到外部获取各种必须的镜像)
cd /usr/local/harbor
./prepare
6.开始安装harbor(啰嗦:必须进入到/usr/local/harbor目录下)
cd /usr/local/harbor
./install.sh
直到看到[✔ ----Harbor has been installed and started successfully.----]才说明harbor安装成功了。
7.(可略过)查看docker进程,看harbor是否安装成功
docker ps
正常的话,你会看到一堆包含harbor的docker ps进程
-至此,harbor2.0就安装完成了。
四、登录harbor的web页面
1.修改windows的hosts文件,做harbor域名解析。(如果你的域名是公网的,那就不要没多大必要做这一步了)
2.浏览器打开harbor:https://harbor.hiibm.com ,点“高级”,“继续前往harbor.hiibm.com(不安全)”
3. harbor的默认登录账号是admin,默认密码是Harbor12345
至此,harbor就彻底安装完成了。
六、harbor的启动和停止
cd /usr/local/harbor
#停止harbor
docker-compose -f docker-compose.yml down
#启动harbor
docker-compose -f docker-compose.yml up -d
或者写两个简单的脚本更方便
cat > ~/stopHarbor.sh < ~/startHarbor.sh <
------------本帖部分参考jason9211的帖子。特此鸣谢--------
-------------送上鸡汤:我命由我不由天,是魔是仙我自己说了算--------------------------
你可能感兴趣的:(docker)