harbor部署(docker hub)+bash一键安装

搭建自己的docker hub,适用于内网部署
演示版本为2.9.0(2023年9月版本)


官网: harbor

需要docker和docker-compose,如果没有安装,可以参考:
docker和docker-compose安装

一、安装

1.下载解压

cd /usr/local

如果官方下载太慢,建议用下载工具下载并上传到服务器

wget https://github.com/goharbor/harbor/releases/download/v2.9.0/harbor-offline-installer-v2.9.0.tgz

解压

tar -zxvf harbor-offline-installer-v2.9.0.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脚本一键安装(可选)

这个脚本是我上面操作,如果上面手动操作了,就不要用了

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.客户端登录(以下操作在客户端)

允许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里面即可

二、卸载

这里通过名称为goharbor开头的来批量选取

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安装包

Docker 是一款开源的应用容器引擎,它可以让你轻松打包、分发和运行应用,而不考虑底层基础设施的细节。这种“一次构建,到处运行”的能力极大提高了跨环境一致性,并减少了 IT 设施的成本和复杂度。 ### 安装 Docker #### Windows 系统 1. 访问 Docker 官方网站,下载适用于 Windows 的 Docker 核心版或社区版。 2. 执行下载的安装程序,根据向导指示完成安装。 3. 启动 Docker 并按照提示接受许可协议。 4. 验证 Docker 是否成功安装,在命令行输入 `docker version`,显示版本信息即表示安装成功。 #### macOS 系统 1. 访问 Docker 官网,找到适用于macOS的 Docker for Mac 版本。 2. 下载安装包,双击执行安装。 3. 如果系统提示权限不足,请选择 “打开” 来授予安装程序所需权限。 4. 遵循后续指引完成安装,最后重启电脑。 5. 在终端输入 `docker --version` 检查安装结果。 #### Linux 系统 根据你的发行版,从官方网站下载相应的 .deb 或 .rpm 包。 1. 使用包管理器安装(例如在基于 Debian 的系统中使用 `sudo apt-get install docker.io`)。 2. 对于 Fedora 和 Red Hat 系统,使用 `sudo dnf install docker`。 3. 启动 Docker 并设置开机自启(根据系统指南,比如 `sudo systemctl start docker && sudo systemctl enable docker`)。 4. 验证安装,输入 `docker --version`。 ### 配置 Docker #### 设置防火墙 - **Windows**: 可能需要允许 Docker 对特定端口的访问,具体操作取决于你正在使用的防火墙类型。 - **Linux/macOS**: 使用防火墙命令(例如在 Ubuntu 上使用 `ufw allow docker`),确保 Docker 能够通信。 #### 登录 Docker Hub 或者使用本地镜像仓库 1. 登录 Docker Hub 使用官方图像。 2. 或者安装本地的私有仓库,例如 Harbor 或其他兼容 Docker Registry 的产品。 ### 开始使用 Docker #### 创建 Docker 镜像和容器 使用 Dockerfile 编写一个简单的示例,包括基本的环境和你的应用: ```Dockerfile FROM ubuntu:latest RUN echo "Hello World" > /hello.txt CMD ["cat", "/hello.txt"] ``` 然后构建镜像: ```bash docker build -t hello-world . ``` 启动容器: ```bash docker run -it hello-world ``` ### 相关问题: 1. 如何优化 Docker 性能以满足大型应用的需求? 2. Docker 中的网络配置是如何工作的? 它们对应用的运行有何影响? 3. 当遇到 Docker 容器无法启动的问题时,如何诊断和解决?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ziqibit

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值