下载地址:https://github.com/goharbor/harbor/releases/download/v2.5.0/harbor-offline-installer-v2.5.0.tgz
因为github国内下载太慢,如有需要可以私信我拿取下载好的安装包
目前我的机器配置是:2核CPU、4G内存、50G硬盘
根据软件配置要求安装对应软件
可参考博客:https://blog.csdn.net/m0_51510236/article/details/115054073
快速安装docker的脚本:
#!/bin/bash
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
sudo yum install -y yum-utils
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
sudo yum install -y docker-ce docker-ce-cli containerd.io
sudo systemctl start docker
sudo systemctl enable docker
Docker Compose 下载地址:https://github.com/docker/compose/releases/download/v2.5.0/docker-compose-linux-x86_64
大概安装步骤的脚本如下:
#!/bin/bash
# make directory and access folder
mkdir -p /opt/server/docker-compose
cd /opt/server/docker-compose
# download docker-compose package
wget https://github.com/docker/compose/releases/download/v2.5.0/docker-compose-linux-x86_64
# mkdir executable role to docker-compose
chmod +x docker-compose-linux-x86_64
# make link to /usr/bin
ln /opt/server/docker-compose/docker-compose-linux-x86_64 /usr/bin/docker-compose
systemctl stop firewalld
systemctl disable firewalld
# 暴露端口
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --zone=public --add-port=443/tcp --permanent
firewall-cmd --zone=public --add-port=4443/tcp --permanent
# 使暴露的端口生效
firewall-cmd --reload
输入命令 firewall-cmd --list-ports
查看端口是否暴露成功:
使用命令安装即可:
yum install -y openssl
使用以下命令解压
tar -zxvf harbor-offline-installer-v2.5.0.tgz -C /opt/server/
解压完成之后我们可以来到 /opt/server/harbor
目录下查看解压后的文件
将 harbor.yml.tmpl
文件复制一份名为 harbor.yml
:
cp harbor.yml.tmpl harbor.yml
使用 vi harbor.yml
可以编辑这个配置文件
在配置文件的第五行可以看到一个 hostname
的配置项,这个配置项后面可以改成 IP地址
或者是 域名
,我这里先解析一个域名(服务提供商为阿里云,其他的服务提供商也不受限制):
或者你们可以更改电脑上的hosts配置文件解析域名,hosts配置文件的路径:
Windows
: C:\Windows\System32\drivers\etc\hostsLinux
:/etc/hosts配置如下:
# 前面是服务器的IP地址,后面是域名
192.168.0.133 harbor.example.com
如果你确定不需要可以跳过接下来配置https的步骤,如需要,那么上一步你必须是自己的域名,并且需要申请一个ssl证书(免费版本即可)(服务提供商为阿里云,其他的服务提供商也不受限制):
创建 /opt/server/harbor/ssl
文件夹(可以根据自己的喜好更改),并将ssl证书复制到这个文件夹当中(文件名经过更改):
然后回到更改 harbor.yml
配置文件,需要配置域名证书的路径:
可以在 harbor.yml
配置文件的 harbor_admin_password
配置项当中查看超级管理员 admin
账号初始密码:
我们可以在解压的更目录查看到一个 insall.sh
文件,我们直接运行它:
需要运行一下命令来向docker声明一下本机的docker地址(注意替换掉您的IP或者是域名):
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"insecure-registries" : ["您的IP地址或者是域名", "0.0.0.0"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
访问harbor服务器的地址,这是你的IP地址或者是你们自己配置的域名,访问登录页面,然后输入你的用户名和密码:
然后点击登录来到首页,点击右上角的admin用户名下的修改密码,将密码修改掉:
推送镜像之前我们先需要创建一个项目
点击新建项目 ->输入项目名称->确定,即可将项目创建完毕:
目前演示就用一个比较简单的公共的nginx镜像来演示了,首先我们在一台装有docker的机器上,下拉一个镜像:
docker pull nginx:1.21.6
根据 harbor 的命令提示打一个 tag 标签:
docker tag nginx:1.21.6 harbor.greateme.com/test-project/nginx:1.21.6
我们需要登录到harbor服务器,使用如下命令:
docker login --username=admin 您的IP地址或域名
看到 Login Succeeded
则代表登录成功,我们使用harbor提示的命令推送镜像:
docker push harbor.greateme.com/test-project/nginx:1.21.6
如果是不同的机器我们还是需要登录,步骤和之前上面说的登录步骤一样,然后我们可以在仓库的web界面看到拉取命令的提示,可以点击下面的复制图标复制拉取镜像的命令:
拉取密码我们最好将 @
后面的一长串改为镜像的 :tag
:
docker pull harbor.greateme.com/test-project/nginx@sha256:25dedae0aceb6b4fe5837a0acbacc6580453717f126a095aa05a3c6fcea14dd4
# 替换成:
docker pull harbor.greateme.com/test-project/nginx:1.21.6
我们可以看到拉取成功,Harbor的安装和使用就讲到这了