云计算实训39——Harbor仓库的使用、Docker-compose的编排、YAML文件

一、Harbor部署

1.验证python版本

[root@docker2 ~]#python --version

2.安装pip

[root@docker2 ~]# yum -y install python2-pip

#由于版本过低,需要对其进行一个升级

#更新pip

[root@docker2 ~]#pip install --upgrade pip

3.指定版本号

[root@docker2 ~]# pip install --upgrade pip==20.3 -i https://mirrors.aliyun.com/pypi/simple

#查看pip版本

[root@docker2 ~]# pip list

Package Version

pip 20.3

4.安装docker-compose

[root@docker2 ~]# pip install docker-compose --ignore-installed requests  -i https://mirrors.aliyun.com/pypi/simple#查看docker-compose版本[root@docker2 ~]# pip listPackage               Versiondocker-compose        1.26.2

5.安装docker

#docker.sh脚本的具体内容如下:#---------------------------------------------------------------------------------------
# 创建一个配置文件,确保在系统启动时加载 overlay 和 br_netfilter 内核模块  
cat << EOF | tee /etc/modules-load.d/k8s.conf   
overlay  
br_netfilter  
EOF  # 立即加载 overlay 和 br_netfilter 内核模块  
modprobe overlay  
modprobe br_netfilter  # 创建一个 sysctl 配置文件,配置 Kubernetes 网络设置  
cat << EOF | tee /etc/sysctl.d/k8s.conf  
net.bridge.bridge-nf-call-iptables = 1     # 允许对桥接接口的iptables过滤  
net.bridge.bridge-nf-call-ip6tables = 1    # 允许对桥接接口的ip6tables过滤  
net.ipv4.ip_forward = 1                    # 启用 IPv4 转发,以支持 pod 网络  
EOF  # 重新加载 sysctl 配置,应用新的网络设置  
sysctl --system  # 安装 yum-utils、设备映射持久数据和 lvm2,这些是后续安装 Docker 所需的工具  
yum install -y yum-utils device-mapper-persistent-data lvm2  # 添加阿里云 Docker 仓库,以便于通过 yum 安装 Docker  
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo  # 安装 Docker 及相关组件,包括 Docker CLI、containerd、Buildx 和 Compose 插件  
yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y#---------------------------------------------------------------------------------------#拖拽安装docker的脚本[root@docker2 ~]# rz -E
rz waiting to receive.#查看[root@docker2 ~]# ls
anaconda-ks.cfg  docker.sh#让docker.sh脚本生效[root@docker2 ~]# source docker.sh #上传daemon.json文件[root@docker2 harbor]# scp root@192.168.1.32:/etc/docker/daemon.json /etc/docker/#编辑daemon.json文件[root@docker2 harbor]# vim /etc/docker/daemon.json{"registry-mirrors": ["https://do.nark.eu.org","https://dc.j8.work","https://docker.m.daocloud.io","https://dockerproxy.com","https://docker.mirrors.ustc.edu.cn","https://docker.nju.edu.cn"],"hosts":["tcp://0.0.0.0:2375","unix:///var/run/docker.sock"],"insecure-registries": ["http://192.168.1.24"]}#编辑docker.service文件[root@docker2 harbor]# vim /usr/lib/systemd/system/docker.service 
ExecStart=/usr/bin/dockerd#启动docker[root@docker2 harbor]# systemctl start docker
Warning: docker.service changed on disk. Run 'systemctl daemon-reload' to reload units.
Job for docker.service failed because the control process exited with error code. See "systemctl status docker.service" and "journalctl -xe" for details.#重新加载daemon[root@docker2 harbor]# systemctl daemon-reload#再次启动docker[root@docker2 harbor]# systemctl start docker

6.安装harbor

#下载harbor包
[root@docker2 ~]# rz -E
rz waiting to receive.
#查看
[root@docker2 ~]# ls
anaconda-ks.cfg  docker.sh  harbor-offline-installer-v2.11.1.tgz#查看docker版本
[root@docker2 ~]# docker --versionDocker version 26.1.4, build 5650f9b#解压harbor
[root@docker2 ~]# tar -zxvf harbor-offline-installer-v2.11.1.tgz #查看[root@docker2 ~]# lsanaconda-ks.cfg  docker.sh  harbor  harbor-offline-installer-v2.11.1.tgz#切入harbor目录[root@docker2 ~]# cd harbor/#查看[root@docker2 harbor]# lscommon.sh  harbor.v2.11.1.tar.gz  harbor.yml.tmpl  install.sh  LICENSE  prepare

7.复制harbor.yml文件

[root@docker2 harbor]# cp harbor.yml.tmpl harbor.yml

8.编辑harbor.yml文件

[root@docker2 harbor]# vim harbor.yml

9.查看端口状态

[root@docker2 harbor]# netstat -lnput | grep 80[root@docker2 harbor]# netstat -lnput | grep 5000

10.执行

#执行prepare

[root@docker2 harbor]# ./prepare

#执行install.sh

[root@docker2 harbor]# ./install.sh

11.上传镜像

[root@docker2 harbor]# docker pull centos

12.打标签

[root@docker2 harbor]# docker tag centos:latest 192.168.1.24/library/ddcentos:v0

13.下载镜像

[root@docker2 harbor]# docker push 192.168.1.24/library/ddcentos:v0

14.登录docker镜像仓库

[root@docker2 harbor]# docker login http://192.168.1.24
Username: admin
Password: 
Error response from daemon: Get "http://192.168.1.24/v2/": dial tcp 192.168.1.24:80: connect: connection refused

15.浏览器访问:

16.开启容器

#查看所有容器[root@docker2 harbor]# docker ps --all
CONTAINER ID   IMAGE                                 COMMAND                   CREATED          STATUS                            PORTS                                   NAMES
99c3f62458f4   goharbor/nginx-photon:v2.11.1         "nginx -g 'daemon of…"   32 minutes ago   Up 3 seconds (health: starting)   0.0.0.0:80->8080/tcp, :::80->8080/tcp   nginx
dd3ef1a8cdfc   goharbor/harbor-jobservice:v2.11.1    "/harbor/entrypoint.…"   32 minutes ago   Exited (128) 3 minutes ago                                                harbor-jobservice
8999a3b7136d   goharbor/harbor-core:v2.11.1          "/harbor/entrypoint.…"   32 minutes ago   Exited (128) 2 minutes ago                                                harbor-core
444ce3ab8f55   goharbor/harbor-portal:v2.11.1        "nginx -g 'daemon of…"   32 minutes ago   Exited (128) 2 minutes ago                                                harbor-portal
8a8cd273a779   goharbor/registry-photon:v2.11.1      "/home/harbor/entryp…"   32 minutes ago   Exited (128) 2 minutes ago                                                registry
dbf40ab53516   goharbor/redis-photon:v2.11.1         "redis-server /etc/r…"   32 minutes ago   Up 2 minutes (healthy)                                                    redis
59f6ebcbaa18   goharbor/harbor-registryctl:v2.11.1   "/home/harbor/start.…"   32 minutes ago   Exited (128) 2 minutes ago                                                registryctl
a7b8abe38923   goharbor/harbor-db:v2.11.1            "/docker-entrypoint.…"   32 minutes ago   Exited (128) 2 minutes ago                                                harbor-db
9cc010ff2807   goharbor/harbor-log:v2.11.1           "/bin/sh -c /usr/loc…"   32 minutes ago   Up 2 minutes (healthy)            127.0.0.1:1514->10514/tcp               harbor-log#开启关闭的容器[root@docker2 harbor]# docker start harbor-jobservice harbor-core harbor-portal registry registryctl harbor-db
harbor-jobservice
harbor-core
harbor-portal
registry
registryctl
harbor-db

17.访问验证

#再次登录docker镜像仓库[root@docker2 harbor]# docker login http://192.168.1.24
Username: admin
Password: 
WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-storeLogin Succeeded#再次下载镜像[root@docker2 harbor]# docker push 192.168.1.24/library/ddcentos:v0 
The push refers to repository [192.168.1.24/library/ddcentos]
74ddd0ec08fa: Pushed 
v0: digest: sha256:a1801b843b1bfaf77c501e7a6d3f709401a1e0c83863037fa3aab063a7fdb9dc size: 529

#浏览器访问验证:

能够看到我们所创建的镜像---ddcentos

18.共享镜像

切到docker机器:

#启动docker

[root@docker ~]# systemctl start docker

#编辑daemon.json文件

[root@docker ~]# vim /etc/docker/daemon.json

#重新启动docker

[root@docker ~]# systemctl restart docker

#到访问页面复制拉取命令

#使用复制的连接,添加同时共享的镜像[root@docker ~]# docker pull 192.168.1.24/library/ddcentos@sha256:a1801b843b1bfaf77c501e7a6d3f709401a1e0c83863037fa3aab063a7fdb9dc
192.168.1.24/library/ddcentos@sha256:a1801b843b1bfaf77c501e7a6d3f709401a1e0c83863037fa3aab063a7fdb9dc: Pulling from library/ddcentos
Digest: sha256:a1801b843b1bfaf77c501e7a6d3f709401a1e0c83863037fa3aab063a7fdb9dc
Status: Downloaded newer image for 192.168.1.24/library/ddcentos@sha256:a1801b843b1bfaf77c501e7a6d3f709401a1e0c83863037fa3aab063a7fdb9dc
192.168.1.24/library/ddcentos@sha256:a1801b843b1bfaf77c501e7a6d3f709401a1e0c83863037fa3aab063a7fdb9dc#查看镜像#可以看到被共享的镜像[root@docker ~]# docker images
REPOSITORY                       TAG       IMAGE ID       CREATED         SIZE
centos                           httpd0    db3cae3b5002   2 days ago      280MB
192.168.1.32:5000/centos_nginx   v0        1c2a0901c77a   3 days ago      368MB
centos                           nginx     1c2a0901c77a   3 days ago      368MB
centos                           httpd     e9a1ee725b43   6 days ago      311MB
centos                           yum       82ca12d9b058   6 days ago      261MB
registry                         latest    cfb4d9904335   11 months ago   25.4MB
centos                           latest    5d0da3dc9764   2 years ago     231MB
192.168.1.24/library/ddcentos    <none>    5d0da3dc9764   2 years ago     231MB

二、部署Docker-compose

1.Docker-compose 核⼼概念

docker compose 是 docker 官⽅的开源项⽬,负责实现对 docker 容器集群的快速编排;

docker compose可以管理多个 docker 容器组成的应⽤;

需要定义⼀个 YAML 格式的配置⽂件 docker-compose.yml,写 好多个容器之间的调⽤关系;

Docker-compose 将管理的容器分为三层:⼯程(project)、 服务(service)、容器(container)

⼯程:

运⾏ compose 的⽬录下所有的⽂件,包括 dockercompose.yml、extends ⽂件、环境变量⽂件等组成⼀个⼯程, 若⽆特殊指定⼯程,⼯程名即为当前⽬录名。⼯程的默认配置⽂ 件为 docker-compose.yml,可通过环境变量 COMPOSE_FILE 或 -f 参数⾃定义配置⽂件,其定义了多个有依赖关系的服务及 每个服务运⾏的容器。

服务:

⼀个⼯程中包含多个服务,每个服务中定义了容器运⾏的镜像、参数、依赖等,⼀个服务中可包括多个容器实例。

容器:

被 docker-compose 管理或部署的容器集群,调⽤ docker 服务提供的 API 来对容器进⾏管理,只要操作的平台⽀ 持 docker API,即可在其上进⾏ compose 的容器编排。

2.YAML⽂件的格式和语法

1、YAML ⽂件格式

yaml 是⼀种标记语⾔很直观的数据序列化格式,可读性很⾼。 类似于 xml 描述性语⾔,语法⽐xml简单的很多。

yaml 数据结构通过缩进进⾏表示,连续的项⽬通过减号来表 示,键值对⽤冒号分隔,数组⽤中括号括起来,hash

⽤花括号括起来。

yaml ⽂件的基本格式由⼀系列键值对构成。每个键值对都⽤冒 号“: ”分隔

在 yaml 中,键和值之间只需要⼀个空格,这是为了保证 yaml ⽂件的可读性和⼀致性

key: value

对于字符串值,可以使⽤单引号或者双信号将其括起来,这样可以避免出现特殊字符或空格等问题

name: 'Meng Mr'

age: "34"

如果值包含特殊字符(如冒号或短横线),则应该使⽤引号将其括起来

description: "This is a YAML file: good for configuation files."

2、YAML 注意事项

(1)不⽀持制表符 tab 键缩进,需要使⽤空格缩进。

(2)通常开头缩进 2 个空格。

(3)字符后缩进 1 个空格,如:冒号,逗号,横杠。

(4)⽤ # 表示注释。

(5)如果包含特殊字符⽤单引号引起来。

(6)布尔值(true、false、yes、no、on、off)必须使⽤“”引号括起 来,这样分析器会将它们解释为字符串。

3、列表和数组

在yaml中,可以使⽤“-”符号表示⼀个列表和数组

4、嵌套数据结构

yaml⽀持嵌套数据结构,可以⽤缩进来表示不同层级之间的关系, 可使⽤ # 号表示注释信息。

3.docker compose 命令选项

1.build:重新构建服务2.ps:列出容器3.up:启动所有的docker-compose服务4.up -d:启动所有docker-compose服务并在后台运行5.exec:进入容器实例内部6.:指定一个服务器启动数量7.top:显示容器进程8.logs:查看容器输出日志9.down:停止并删除容器、网络、卷、镜像10.stop:停止服务11.start:启动服务12.restart:重启服务13.config:检查配置14.config -q:检查配置,有问题才有输出15.--version:查看版本

4.YAML⽂件内常⽤指令字段

(1)version

指定了Docker compose编排⽂件的版本

Docker Compose ⽬前有三个版本,分别为 Version1、Version2和Version3。

Version1 是较早的版本,它将来会被弃⽤。

Version2 是⽬前的稳定版本,⽀持更多的指令。

Version3 在功能上与 Version2 类似,但进⾏了⼀些改进和 扩展,例如增加了对 Docker BuildKit

的⽀持,可以加速构 建过程。

(2)services

指定了在 docker compose 编排中要运⾏的服务,每个服务都有⼀ 个名称,并指定要使⽤的镜像

和容器的配置选项。

(3)image

指定要使⽤的 docker 镜像。

(4)build

允许在 docker compose 编排中指定 dockerfile 的位置。

(5)environment

指定了要设置的环境变量。

(6)volumes

挂载宿主机路径或命名卷

(7)ports

指定了要宿主机映射到容器的端⼝,端⼝不能低于 60(宿主机端 ⼝:容器端⼝),如果选择的端

⼝号低于 60,可能会与系统保留的 知名端⼝冲突。

(8)expose

⽤于在 docker 容器内部暴露端⼝的选项。

(9)networks

加⼊⽹络,引⽤顶级 networks 条⽬.

(10)hostname

设定容器主机名

(11)command

指定容器启动时要运⾏的命令,覆盖构建时的默认命令

5.安装Docker-compose

1.下载pip

[root@docker3 ~]# yum -y install python2-pip

2.升级pip到最新版本

[root@docker3 ~]# pip install --upgrade pip

3.指定版本号

[root@docker3 ~]# pip install --upgrade pip==20.3 -i Simple Index

4.使用pip安装docker-compose

[root@docker3 ~]# pip install docker-compose -i Simple Index

rz waiting to receive.

5.安装docker

[root@docker3 ~]# lsanaconda-ks.cfg docker.sh

#让docker.sh脚本文件生效

[root@docker3 ~]# source docker.sh

6.远程复制daemon.json文件到本地目录

[root@docker3 test]# scp root@192.168.1.32:/etc/docker/daemon.json /etc/docker/

7.编辑配置文件

#编辑daemon.json 文件[root@docker3 test]# vim /etc/docker/daemon.json {"registry-mirrors": ["https://do.nark.eu.org","https://dc.j8.work","https://docker.m.daocloud.io","https://dockerproxy.com","https://docker.mirrors.ustc.edu.cn","https://docker.nju.edu.cn"],"hosts":["tcp://0.0.0.0:2375","unix:///var/run/docker.sock"],"insecure-registries": ["http://192.168.1.35"]}#编辑docker.service文件[root@docker3 test]# vim /usr/lib/systemd/system/docker.service ExecStart=/usr/bin/dockerd

8.加载deamon

[root@docker3 test]# systemctl daemon-reload

9.启动docker

[root@docker3 test]# systemctl start docker

10.创建目录

#创建test目录

[root@docker3 ~]# mkdir test

#切入test目录

[root@docker3 ~]# cd test/[root@docker3 test]# ls

#创建html目录

[root@docker3 test]# mkdir html

#写入内容

[root@docker3 test]# echo "我是被编排的nginx" > ./html/index.html

#访问验证

#使用tree命令查看

[root@docker3 test]# tree
.
└── html 
└── index.html1 directory, 1 file

11.创建yml文件

[root@docker3 test]# vim docker-compose.ymlversion: "3"
services:nginx:container_name: c1image: "nginx:latest"ports:- "80:80"volumes:- /root/test/html/:/usr/share/nginx/html/

12.启动docker-compose容器集群

[root@docker3 test]# docker compose up -d
WARN[0000] /root/test/docker-compose.yml: `version` is obsolete 
[+] Running 8/8✔ nginx Pulled                                                                                                  89.7s ✔ e4fff0779e6d Pull complete                                                                                  26.1s ✔ 2a0cb278fd9f Pull complete                                                                                  31.0s ✔ 7045d6c32ae2 Pull complete                                                                                  31.0s ✔ 03de31afb035 Pull complete                                                                                  31.0s ✔ 0f17be8dcff2 Pull complete                                                                                  31.0s ✔ 14b7e5e8f394 Pull complete                                                                                  31.0s ✔ 23fa5a7b99a6 Pull complete                                                                                  31.1s 
[+] Running 2/2✔ Network test_default  Created                                                                                  0.1s ✔ Container c1          Started                                                                                  0.9s 

13.查看及验证

#查看镜像[root@docker3 test]# docker imagesREPOSITORY TAG IMAGE ID CREATED SIZEnginx latest 5ef79149e0ec 2 weeks ago 188MB#查看容器[root@docker3 test]# docker ps --allCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMESebfbdb329f7a nginx:latest "/docker-entrypoint.…" 5 minutes ago Up 5 minutes 0.0.0.0:80->80/tcp, :::80->80/tcp c1

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/417152.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SpringBoot实现前后端传输加密设计

在Web应用中&#xff0c;确保前后端之间的数据传输安全是非常重要的。这通常涉及到使用HTTPS协议、数据加密、令牌验证等安全措施。本文通过将前后端之间的传输数据进行加密&#xff0c;用于在Spring Boot应用中实现前后端传输加密设计。 一、数据加密方案 即使使用了HTTPS&…

安防监控视频打手机检测算法核心技术打手机检测算法源码、模型简介

在数字化的今天&#xff0c;智能手机几乎已成为人们生活中不可或缺的一部分。然而&#xff0c;手机的广泛使用也带来了一些挑战&#xff0c;比如在公共场所、教育机构和工作环境中的手机干扰。为了解决这些问题&#xff0c;打手机检测算法应运而生&#xff0c;成为管理人员和机…

足底筋膜炎怎么治疗才能除根

一、足底筋膜炎的引起原因&#xff0c;足底筋膜炎是一种常见的足部疾病&#xff0c;其引起原因多样&#xff0c;主要包括以下几个方面&#xff1a; 1、过度使用&#xff1a;长时间站立、行走或跑步等活动&#xff0c;特别是当这些活动超出了足底筋膜的承受能力时&#xff0c;会…

毒枸杞事件启示录:EasyCVR视频AI智能监管方案如何重塑食品卫生安全防线

一、方案背景 近年来&#xff0c;食品安全问题频发&#xff0c;引发了社会各界的广泛关注。其中&#xff0c;毒枸杞事件尤为引人关注。新闻报道&#xff0c;在青海格尔木、甘肃靖远等地&#xff0c;部分商户为了提升枸杞的品相&#xff0c;违规使用焦亚硫酸钠和工业硫磺进行“…

Android Telephony总结

1、Telephony 业务介绍 Android telephony涉及较多模块 1.1、STK业务介绍 1.1.1、STK域选 1.1.2、是否支持STK Telephon STK-CSDN博客 1.1.3、STK应用的安装卸载 1.2、SS补充业务 1.3、通话业务 1.3.1、紧急号码 ECC 号码总结_ecc号码-CSDN博客 1.4、SMS 1.4.1 短信发送方式…

vue3 VueUse useElementVisibility 来监听某一个元素或者div是否在当前视口viewport中可见。

1、先上一个图&#xff1a; 2、安装vueuse/core pnpm add vueuse/core 3、新建一个组件&#xff1a; <script setup lang"ts"> import { ref, watch } from "vue"; import { useElementVisibility } from "vueuse/core";const target re…

备考MS office 二级

word 1、分页符 布局-分隔符-分节符-下一页&#xff1a;第二张可以不同纸张大小、方向等 2、调整宽度&#xff1a;新文字宽度&#xff08;字符宽度&#xff09; 中文版式 3、字符间距 4、文本转换为表格 1、把 || 替换为逗号&#xff0c;方便查找 5、首字下沉 插入 - 首字下沉…

便宜好用的云手机盘点

云手机作为一种新型远程计算服务&#xff0c;凭借其便利性、高效性和可扩展性&#xff0c;迅速成为了用户的热门选择。然而&#xff0c;面对市场上众多的云手机品牌&#xff0c;如何选择一款性价比高且体验良好的云手机&#xff1f;本文将为您盘点几款便宜好用的云手机产品。 雷…

Avalonia 播放 VLC 视频(Windows / Linux)

【演示效果】 一、开发步骤 1. 版本与引用类库 Avalonia 版本:11.0.11 Windows上只需要安装以下类库: LibVLCSharp 3.8.5 LibVLCSharp.Avalonia 3.8.5 VideoLAN.LibVLC.Windows 3.0.20 引用截图: 2. 前端代码 <UserControl xmlns="https://github.com/avaloni…

windows手工杀毒-寻找可疑进程之进程模块

上篇回顾&#xff1a;windows手工杀毒-寻找可疑进程之进程启动文件-CSDN博客 上篇我们介绍了如何通过进程启动文件寻找可疑进程&#xff0c;首先我们查看文件的数字签名&#xff0c;如果签名是合法的&#xff0c;且是正规公司的证书。基本可疑排除进程是可疑进程&#…

pnpm国内源设置

一、背景 在国内使用pnpm时&#xff0c;由于网络问题&#xff0c;经常会遇到速度慢或无法访问的问题。为了提高效率&#xff0c;可以将pnpm的源设置为国内的镜像源。以下是一些常用的国内pnpm镜像源以及如何设置它们的方法。 二、国内可用源 2.1 淘宝pnpm源 https://registry…

【全网最全】2024年数学建模国赛B题保奖思路+成品论文+matlab/python代码等(后续会更新

您的点赞收藏是我继续更新的最大动力&#xff01; 一定要点击末文的卡片&#xff0c;那是获取资料的入口&#xff01; 一、问题重述 本题聚焦于某电子产品制造企业在生产过程中的决策问题。企业在生产中需采购 和使用两种关键零配件&#xff0c;并在装配过程中面临如何优化质…

2024年全国大学生数学建模竞赛(C题) 建模解析|农作物的种植策略|小鹿学长带队指引全代码文章与思路

我是鹿鹿学长&#xff0c;就读于上海交通大学&#xff0c;截至目前已经帮200人完成了建模与思路的构建的处理了&#xff5e; 本篇文章是鹿鹿学长经过深度思考&#xff0c;独辟蹊径&#xff0c;实现综合建模。独创复杂系统视角&#xff0c;帮助你解决国赛的难关呀。 完整内容可以…

SpringBoot依赖之Spring Boot DevTools热部署开发增效工具

摘要&#xff1a;Spring项目又大又重&#xff0c;依赖多&#xff0c;编译启动慢&#xff0c;怎么提高研发效率呢&#xff1f;方法之一热部署&#xff01; 概念 Spring Boot DevTools 依赖名称: Spring Boot DevTools功能描述: Provides fast application restarts, LiveRelo…

Milvus 向量数据库进阶系列丨构建 RAG 多租户/多用户系统 (下)

本系列文章介绍 在和社区小伙伴们交流的过程中&#xff0c;我们发现大家最关心的问题从来不是某个具体的功能如何使用&#xff0c;而是面对一个具体的实战场景时&#xff0c;如何选择合适的向量数据库解决方案或最优的功能组合。在 “Milvus 向量数据库进阶” 这个系列文章中&a…

天润融通解开售后维修的成本枷锁,提高维修服务效率

如今&#xff0c;企业客户服务在开展业务咨询和售后受理时&#xff0c;主要方式还是通过电话与在线方式进行。这种方式虽然方便&#xff0c;但是对于一些非常紧急的情况还是显得有些不够。 比如&#xff0c;虽然现在许多企业APP已经实现了一键咨询和一键报修&#xff0c;但当客…

cuda编程[1]:一二三维网格和块的核函数

目录 前言核函数一维二维三维结果分析 前言 所有的代码下载链接&#xff1a;code。以下代码展示了如何在 CUDA 中打印网格和线程的索引信息。代码包括一维、二维和三维的网格和块的设置&#xff0c;并定义了多个内核函数来输出当前的索引信息。 核函数 打印线程索引 __gl…

[MOCO v3] An Empirical Study of Training Self-Supervised Vision Transformers

1、目的 探索基于contrastive/Siamese范式&#xff08;而非masked auto-encoding范式&#xff09;和ViT结构&#xff08;而非卷积网络&#xff09;的自监督学习 2、方法 MoCo v3 ​​​​​​​ 1&#xff09;random data augmentation 2&#xff09;query encoder &a…

shell 学习笔记:数组

目录 1. 定义数组 2. 读取数组元素值 3. 关联数组 4. 在数组前加一个感叹号 ! 可以获取数组的所有键 5. 在数组前加一个井号 # 获取数组的长度 6. 数组初始化的时候&#xff0c;也可以用变量 7. 循环输出数组的方法 7.1 for循环输出 7.2 while循环输出 7.2.1 …

数据结构与算法 第10天(图的应用)

一、最小生成树 生成树&#xff1a;所有顶点均由边连接在一起&#xff0c;但不存在回路 一个图可以有多颗不同的生成树 生成树特点&#xff1a;生成树的顶点个数与图的顶点个数相同; 生成树是图的极小连通子图&#xff0c;去掉一条边则非连通, 一个有 n个顶点的连通图的生成…