[blockquote2 name=’洛维花’]搭建自己的docker hub,适用于内网部署
演示版本为2.9.4(2024年4月版本)[/tip]
官网: harbor
前言
需要docker
和docker-compose
,如果没有安装,可以参考:
docker安装
docker-compose安装
docker hub安装
- 1.下载解压
cd /usr/local
如果官方下载太慢,建议用下载工具下载并上传到服务器
wget https://github.com/goharbor/harbor/releases/download/v2.9.4/harbor-offline-installer-v2.9.4.tgz
解压
tar -zxvf harbor-offline-installer-v2.9.4.tgz
- 2.创建harbor的保存的路径
根据自己情况,这里是/var/harbor
mkdir /var/harbor
授权
chmod -R 750 /var/harbor
- 3.配置文件
复制模板为配置文件
cp /usr/local/harbor/harbor.yml.tmpl /usr/local/harbor/harbor.yml
编辑
vi /usr/local/harbor/harbor.yml
详细配置如下:
1)hostname
改为本机在局域网的ip,比如192.168.0.88
2)http
的port
改为设定的harbor
的对外服务端口,比如8888
3)注释所有https
的配置(前面加#),包括https
、port
、certificate
、private_key
如果使用https
,则不要注释
4)修改data_volume为上面创建的/var/harbor
配置文件可以设置管理员的账号名称,根据需要设置
- 4.安装启动
cd /usr/local/harbor ./install.sh
harbor开机会自动启动
- 5.bash脚本一键安装(可选)
[blockquote2 name=’洛维花’]这个脚本是我上面操作,如果上面手动操作了,就不要用了[/tip]
vi /usr/local/harbor.sh
修改脚本的常量区域,可以调整安装
需要设置本地服务器ip和端口
#!/bin/bash # 常量设置 harbor_version="2.9.0" # harbor版本 install_path="/usr/local" # 安装、操作目录 server_ip="192.168.0.88" # 服务ip server_port="8888" # 服务端口 data_path="/var/harbor" # 数据保存目录 data_path2="\/var\/harbor" # 数据保存目录 # 下载harbor源码包,如果下载过慢,注释下面几行代码 echo "......正在下载源码包......" wget -P ${install_path} wget https://github.com/goharbor/harbor/releases/download/v${harbor_version}/harbor-offline-installer-v${harbor_version}.tgz echo "......源码包下载完成......" # 解压缩 echo "......正在解压缩源码包......" cd ${install_path} tar -zxf ${install_path}/harbor-offline-installer-v${harbor_version}.tgz echo "......源码包解压缩完成......" # 创建数据目录 mkdir ${data_path} chmod -R 750 ${data_path} # 配置文件 echo "......正在修改配置文件......" ## 复制配置文件 cp ${install_path}/harbor/harbor.yml.tmpl ${install_path}/harbor/harbor.yml ## 调整配置文件 sed -i 's/data_volume: \/data/data_volume: '"$data_path2"'/g' ${install_path}/harbor/harbor.yml sed -i 's/hostname: reg.mydomain.com/hostname: '"$server_ip"'/g' ${install_path}/harbor/harbor.yml sed -i 's/https:/# https:/g' ${install_path}/harbor/harbor.yml sed -i 's/certificate:/# certificate:/g' ${install_path}/harbor/harbor.yml sed -i 's/private_key:/# private_key:/g' ${install_path}/harbor/harbor.yml sed -i 's/port: 443/# port: 443/g' ${install_path}/harbor/harbor.yml echo "......修改配置文件完成......" ## 启动 /usr/local/harbor/install.sh echo "......!!!脚本运行完成!!!......"
保存后
sh /usr/local/harbor.sh
使用
- 1.web访问管理页面
浏览器打开ip:port
(每个设备的局域网ip不一样)
访问地址上面设置的(这里是192.168.0.88:8888
)
默认账号:admin 默认密码:Harbor12345(在xml里面配置)
- 2.创建harbor中的账号密码
- 3.客户端登录(以下操作在客户端)/ol>
允许http访问
vi /etc/docker/daemon.json
是新文件,写入以下内容:
{"insecure-registries":["192.168.0.88:8888"]}
使用如下命令
docker login 192.168.0.88:8888
输入账号密码后即可
- 4.配置ssl证书支持https
如果用域名,需要配置ssl证书,证书将保存的目录写道xml里面即可
二、卸载
- 1.暂停所有harbor容器
docker stop $(docker ps -a | grep "goharbor" | awk '{print $1}')
- 2.删除所有harbor容器
docker rm $(docker ps -a | grep "goharbor" | awk '{print $1}')
- 3.删除所有harbor镜像
docker rmi $(docker images | grep "goharbor" | awk '{print $1":"$2}')
然后删除下载的harbor安装包