当前位置: 首页 > news >正文

Kubernetes教程(六)Harbor的安装和使用

Harbor的安装和使用

  • 一、前言
  • 二、安装Docker Compose
  • 三、安装Harbor
  • 四、使用Harbor
    • 配置私有镜像仓库地址
    • 设置Harbor自动启动
    • 推送镜像

一、前言

Harbor是用来搭建私有镜像仓库的,假如你某个应用同时部署在50台服务器上,某天你要给应用升级新的版本,那么就要给这50台服务器上传新的镜像。你想想是不是很累,但是有了Harbor搭建私有镜像服务器,你只需要把你的应用镜像推到Harbor,这50台服务器就可以从Harbor拉取新版本的镜像。

二、安装Docker Compose

Harbor是依赖于Docker和Docker Compose的,所以需要先安装Docker和Docker Compose的。Docker的安装在之前博客安装Docker里讲过来,下面先安装下Docker Compose。
Harbor依赖Docker Compose的版本可以参考Harbor官网。

从https://github.com/docker/compose/releases下载
在这里插入图片描述
如果github访问有问题不能下载,可以从https://download.csdn.net/download/qxmjava/90277368下载,这哥们还挺好不要积分,不过要注意下版本是否和你的Docker匹配。

我通常把软件都下载到主机上整理好,然后再上传到虚拟机或远程服务器上。这样如果换服务器没有必要再下载,直接从本机上传就行。先将docker-compose-linux-x86_64上传到/usr/local/bin/,并重命名为docker-compose

docker-compose是可执行文件,所以要先给它赋可执行权限

sudo chmod +x /usr/local/bin/docker-compose

验证安装

docker-compose --version

如果docker-compose版本错了,需要卸载旧版本,可以执行

sudo rm /usr/local/bin/docker-compose

三、安装Harbor

可以从https://github.com/goharbor/harbor/releases下载Harbor。
解压安装包:

tar harbor-offline-installer-v2.12.2.tgz

解压后进入harbor目录,复制配置文件

cp harbor.yml.tmpl harbor.yml

编辑harbor.yml,有几个重要配置项

  • hostname设置为服务器的ip,不要设为localhost 或 127.0.0.1
  • http:port默认为80,暂时不动它
  • https涉及到证书,比较麻烦,在学习初期可以注释掉https那一大块
  • harbor_admin_password这个要记住,登录Harbor平台时会用到

安装Harbor

sudo ./install.sh

我是在虚拟机里安装的,安装过程遇到了磁盘空间不足的问题,参考了VirtualBox虚拟机扩容详解

如果port端口你没有改,直接在浏览器里访问http://<your-server-ip>,并用账号adminHarbor12345(配置harbor_admin_password)来登录。

如果想要继续更改 Harbor 配置,那么改完后需要重新初始化 Harbor。

# 停止并移除 Harbor 实例群
docker-compose down -v

# 生成配置文件,根据 harbor.cfg 配置生成 docker-compose 文件。
./prepare

# 后台启动 Harbor 实例群
docker-compose up -d

四、使用Harbor

配置私有镜像仓库地址

vim /etc/docker/daemon.json

添加"insecure-registries": ["<你自己的Harbor地址>"]

{
    "registry-mirrors": [
        "https://registry.cn-hangzhou.aliyuncs.com",
        "https://docker.m.daocloud.io"
    ],
    "insecure-registries": ["http://10.0.2.15:80"]
}

重新启动docker

systemctl daemon-reload
systemctl restart docker

如果主机和harbor仓库是同一台主机,重启docker后harbor仓库就登不上了,需要重启下harbor。

//切换到harbor目录.重启harbor
docker-compose down -v && docker-compose up -d

设置Harbor自动启动

  • /usr/local/bin/docker-compose是我自己docker-compose的位置
  • /home/wd/harbor/是我自己的harbor目录
cat >/usr/lib/systemd/system/harbor.service <<EOF
[Unit]
Description=Harbor service with docker-compose
Requires=docker.service
After=docker.service
[Service]
Restart=always
RemainAfterExit=yes
StandardError=null
StandardOutput=null
WorkingDirectory=/home/wd/harbor
ExecStartPre=/usr/local/bin/docker-compose -f /home/wd/harbor/docker-compose.yml down
ExecStart=/usr/local/bin/docker-compose -f /home/wd/harbor/docker-compose.yml up -d
ExecStop=/usr/local/bin/docker-compose -f /home/wd/harbor/docker-compose.yml down
[Install]
WantedBy=multi-user.target
EOF
设置harbor开机启动
systemctl daemon-reload && systemctl enable harbor.service
重启docker看下harbor会不会自动启动
systemctl restart docker
docker ps

推送镜像

先在项目中新建一个项目my_harbor
在这里插入图片描述

先用Harbor账号登录
docker login -u admin -p Harbor12345 10.0.2.15:80

首先我们要给镜像打一个标签,标签格式为:镜像仓库域名/仓库名/镜像:tag
docker tag my-spring-boot-app:latest 10.0.2.15:80/my_harbor/my-spring-boot-app:latest

推送镜像到Harbor镜像仓库,前提是已经登录了镜像仓库
docker push 10.0.2.15:80/my_harbor/my-spring-boot-app:latest

从Harbor拉取镜像
docker pull 10.0.2.15:80/my_harbor/my-spring-boot-app:latest

参考:
https://blog.csdn.net/zxz547388910/article/details/142639513

https://blog.csdn.net/MssGuo/article/details/126210184

https://www.cnblogs.com/xyh9039/p/18523973

相关文章:

  • 用DeepSeek学Android开发:Android初学者遇到的常见问题有哪些?如何解决?
  • react脚手架(creat-react-app)
  • FreeRTOS 任务间通信机制:队列、信号量、事件标志组详解与实验
  • RabbitMQ 高级特性:从 TTL 到消息分发的全面解析 (下)
  • Spring Boot静态资源访问顺序
  • redis有哪几种持久化方式
  • 通过数据库网格架构构建现代分布式数据系统
  • 顺序表与链表·续
  • Xshell链接Linux机器更换jdk版本
  • 基于架构的软件开发(ABSD)
  • C++11新特性1.原始字面量
  • 学之思社区版考试系统docker-compose部署
  • Selenium 中 ActionChains 支持的鼠标和键盘操作设置及最佳实践
  • Java入门:环境搭建与第一个HelloWorld程序
  • 八点八数字科技:AI数字人引领智慧文旅新时代
  • SyntaxError: Unterminated string literal
  • ReAct论文阅读笔记总结
  • Docker 搭建本地 cnpm 私有仓库
  • 【数据库系统概论】第一章 绪论
  • 奇安信 2025 年护网蓝队初选笔试题(附答案解析)
  • wordpress后台500错误/seo排名优化首页
  • 做ptt网站/成都全网营销推广
  • 没有备案的网站怎么做淘宝客/百度站长工具平台
  • 湛江市企业网站seo点击软件/简述网络营销的特点及功能
  • 南山做棋牌网站建设/seo基础知识培训
  • 佛山 网站建设培训班/天津seo推广软件