论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
应用中心
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
qidao123.com技术社区-IT企服评测·应用市场
»
论坛
›
中间件
›
中间件
›
Docker Harbor安装、利用
Docker Harbor安装、利用
东湖之滨
论坛元老
|
2024-8-17 02:24:27
|
显示全部楼层
|
阅读模式
楼主
主题
1799
|
帖子
1799
|
积分
5401
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
docker 官方地点
1. harbor的概述
harbor是VMware公司开源的企业级docker registry项目。重要是实现为用户去敏捷搭建一个docker registry服务。
提供了可视化UI界面,提供了多个项目的镜像权限管理及控制功能。
安装后可以体验下。
Harbor的每个组件都是以Docker 容器的形式构建的,利用docker - compose来对它进行摆设。用于摆设Harbor 的docker- compose模板位于 harbor/ docker-compose.yml。
2. harbor 的焦点组件
1、Proxy: Harbor 的Registry、UI、Token 服务等组件,都处在nginx 反向署理后边。该署理将来自欣赏器、docker clients 的请求转发到后端不同的服务上。
2、Registry
:
负责储存Docker 镜像,并处置惩罚Docker push/pull 命令。
由于要对用户进行访问控制,即不同用户对Docker镜像有不同的读写权限,Registry 会指向一个Token 服务,欺凌用户的每次Docker pull/push 请求都要携带一个合法的Token,Registry会通过公钥对Token 进行解密验证。
3、core services: Harbor的焦点功能,重要提供以下3个服务
1.
UI (harbor-ui)
:提供图形化界面,帮助用户管理Registry. 上的镜像(image) ,并对用户进行授权。
2.
WebHook
: 为了及时获取Registry上 image状态厘革的情况,在Registry上配置Webhook, 把状态厘革传递给UI模块。
3.
Token 服务
:负责根据用户权限给每个Docker push/pull 命令签发Token。 Docker 客户端向Registry 服务发起的请求,假如不包含Token, 会被重定向到Token 服务,获得Token 后再重新向Registry 进行请求。
4、Database (harbor-db) :为core services提 供数据库服务,负责储存用户权限、审计日志、Docker镜像分组信息等数据。
5、Job services:重要用于镜像复制,本地镜像可以被同步到远程Harbor实例上。
6、Log collector (harbor-log) :负责网络其它组件的log,供日后进行分析,健康检查等
3.Harbor构建Docker私有堆栈
1.环境预备:
CentOS7.6、docker 、docker-compose 、harbor 包。
2.安装并启动docker
1.检查内核版本,必须是3.10及以上
# yum list installed | grep docker
2、检查内核版本,必须是3.10及以上
# uname -r
3.把yum包更新到最新
# yum update
4.存在旧版本_删除旧版本
#sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
5.需要的安装包
# sudo yum install -y yum-utils
6.设置镜像的仓库
# sudo yum-config-manager \
--add-repo \
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
7.更新 yum安装包
# yum makecache fast
8.安装docker
# sudo yum install docker-ce docker-ce-cli containerd.io
9、启动docker
# systemctl start docker
设置开机启动docker
# systemctl enable docker
关闭docker命令
# systemctl stop docker
10、查看版本
# docker version
11、检测是否启动成功,可以使用search命令
# docker search mysql
复制代码
3.安装Docker-compose
Compose 是用于定义和运行多容器 Docker 应用步伐的工具。通过 Compose,您可以利用 YML 文件来配置应用步伐必要的所有服务。然后,利用一个命令,就可以从 YML 文件配置中创建并启动所有服务。
Compose 利用的三个步骤:
利用 Dockerfile 定义应用步伐的环境。
利用 docker-compose.yml 定义构成应用步伐的服务,如许它们可以在隔离环境中一起运行。
末了,执行 docker-compose up 命令来启动并运行整个应用程
下载最新版本 docker-compose 期待自动安装。
curl -L https://github.com/docker/compose/releases/download/v2.2.3/docker-compose-linux-x86_64 -o /usr/local/bin/docker-compose
复制代码
二进制文件赋可执行权限
chmod +x /usr/local/bin/docker-compose
复制代码
测试下docker-compose是否安装成功: docker-compose --version
4、Harbor服务搭建及启动
1、下载Harbor安装文件
# mkdir -p /harbor
# cd /harbor/
# wget https://github.com/goharbor/harbor/releases/download/v1.10.10/harbor-online-installer-v1.10.10.tgz
# tar -zxf harbor-online-installer-v1.10.10.tgz
复制代码
2、修改配置Harbor
[root@localhost harbor]# ls
harbor harbor-online-installer-v1.10.10.tgz
[root@localhost harbor]# cd harbor
[root@localhost harbor]# ls
LICENSE common common.sh docker-compose.yml harbor.yml install.sh prepare
[root@localhost harbor]# vi harbor.yml
复制代码
留意:
起首要修改
hostname
为呆板地点,利用的是http,以是
https部分必要注掉
。端口自定义
3、启动Harbor
在Harbor目录下
./install.sh
docker-compose up -d
复制代码
留意:启动时 docker、docker-compose是正常运行状态。
修改配置文件后 ,避免修改不见效,执行:
systemctl daemon-reload
systemctl restart docker
复制代码
Harbor依靠的镜像及启动服务如下:
4、访问Harbor
根据上面的配置。我这里访问 http://192.168.87.131:5100/
默认用户 和登录密码 可以从 harbor.yml 中找到,官网有个地方也有阐明。可以修改中的密码。
admin Harbor12345
页面
5.docker 私有堆栈的利用
1、仓库登录:
docker login -u admin -p Harbor12345 http://192.168.87.131:5100
2、制作镜像:可以是下载的镜像、通过dockerFile制作的镜像
docker pull mysql
docker build -f DockerFile
docker save -o my_image.tar my_image:latest
docker save -o images.tar image1:tag1 image2:tag2 image3:tag3
这个命令将会把名为 my_image:latest 的 Docker 镜像保存为一个名为 my_image.tar 的 tar 归档文件
docker load -i my_image.tar : 这个命令将会加载 my_image.tar 文件中的镜像到 Docker 环境中。
3、然后为该镜像打上新的标签,标签格式为:Harbor地址/项目名/镜像名称:镜像标签。如:192.168.87.131:5100/test/action:2403086585
docker tag 1d01459ee952 192.168.87.131:5100/test/action:2403086585
4、将镜像上传到私有仓库
docker push 192.168.87.131:5100/test/action:2403086585
5、下载私有仓库的镜像
docker pull 192.168.87.131:5100/test/action:2403086585
复制代码
[code][/code]
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
继续阅读请点击广告
回复
使用道具
举报
0 个回复
倒序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
发新帖
回复
东湖之滨
论坛元老
这个人很懒什么都没写!
楼主热帖
《HarmonyOS开发 - 小凌派-RK2206开发 ...
dotnet 6 为什么网络请求不跟随系统网 ...
大二C#实现酒店管理系统(C端展示、前 ...
VMware虚拟机安装黑群晖7.1
从0到1实现一套CICD流程之CD
当我们在聊「开源大数据调度系统Taier ...
ABP Framework 7.0 RC 新增功能简介 ...
RequestDispatcher具有什么功能呢? ...
MySQL视图
测试大姐提了个bug,为什么你多了个opti ...
标签云
国产数据库
集成商
AI
运维
CIO
存储
服务器
浏览过的版块
linux
Java
快速回复
返回顶部
返回列表