一个开源的多播放源自动采集在线影视网站
这里写自定义目录标题
- 欢迎使用Markdown编辑器
- GoFilm
- 简介
- 项目部署
- 1、前置环境准备
- 1.2 redis 配置
- film-api 后端服务配置
- 将 GoFilm 项目根目录下的 film 文件夹上传到 linux 服务器的 /opt 目录下
- 2. 构建运行
- 1. docker 部署
- 1.1 安装 docker , docker compose 环境
- 注意事项:
- 2、 1panel 部署
- 安装 1Panel
- 登录 1Panel 管理面板
- 启动容器
- 依次点击 容器 --> 编排 ---> 创建编排
- 3. 程序初始化
- 3.1. 管理后台
- 登录项目管理后台
- 采集设置初始化
- 影视分类初始化
- 影片定时更新
- 3.2. 网站首页
- 4. 常见问题
- 5. 管理后台基本使用说明
- 1Panel部署(可视化面板操作)
- 环境准备 (Docker)
- Centos 系统安装Docker Engine示例
- 1. 1卸载旧版本Docker
- 1.2. 设置存储库
- 1.3. 安装最新版本Docker
- 启动 Docker 服务
- 2. 启动流程
- 配置使用的用户名密码信息需和ocker-compose.yml文件中设置的一致
- docker-compose.yml (设置服务的启动端口和服务名以及账户密码信息)
- 3. 常见问题
- 5. 管理后台基本使用说明
- 目录结构
- 关注我的CSDN博客
欢迎使用Markdown编辑器
GoFilm
一个基于 vue 和 gin 实现的在线观影网站
简介
GoFilm
项目采用vite + vue作为前端技术栈, 使用 ElementPlus 作为UI 框架进行开发
后端程序使用 Gin + gorm + go-redis 等相关框架提供接口服务, 使用 gocolly 和 robfig/cron 进行公共影视资源采集和定时更新功能
项目部署
部署方式
1、前置环境准备
- linux 服务器
- 下载 GoFilm 项目
修改默认信息 ( 直接使用默认配置则跳过此步骤 )
###容器默认启动端口,默认账户密码配置
# 文件路径: GoFilm/film/docker-compose.yml
# nginx 容器配置
ports:
- port:80 # port 为浏览器访问的默认端口
# film 容器配置
environment: # 环境变量,暂未使用MYSQL_PORT: 3661 # mysql 服务连接端口MYSQL_USER: root # mysql 连接用户MYSQL_PASSWORD: root # mysql 连接用户的密码MYSQL_DBNAME: FilmSite # 默认使用的 mysql 数据库名称REDIS_PORT: 3662 # redis 服务连接端口
ports:- port:3601 # port 为 go 服务端的默认访问端口
# mysql 容器配置
ports:
- port:3306 # port 为 mysql 服务的外部访问端口
environment:MYSQL_ROOT_PASSWORD: 默认密码 # 修改 Mysql 的 root 用户的默认密码MYSQL_DATABASE: 数据库名 # 默认创建的数据库名称
# redis 容器配置
ports:- prot:6379 # port 为 redis 服务的外部访问端口
1.2 redis 配置
# 文件路径 Gofilm/film/data/redis/redis.conf
daemonize no
requirepass 密码 # 设置 redis 服务的访问密码
appendonly no
tcp-keepalive 300
stop-writes-on-bgsave-error no
film-api 后端服务配置
# 文件路径 GoFilm/film/server/config/DataConfig.go
# mysql 服务配置信息 设置 mysql 的 root 用户密码和数据库名为 docker-compose.yml 中对应的信息
MysqlDsn = "root:密码@(mysql:3306)/数据库名称?charset=utf8mb4&parseTime=True&loc=Local"
# Redis 连接信息,设置 redis 访问密码为 Gofilm/film/data/redis/redis.conf 中的密码
RedisPassword = `root`
将 GoFilm 项目根目录下的 film 文件夹上传到 linux 服务器的 /opt 目录下
上传完成后路径为: /opt/film (只上传 GoFilm 项目中的 film 文件夹)
效果如下图所示
2. 构建运行
1. docker 部署
1.1 安装 docker , docker compose 环境
Centos 安装 Docker Engine 官方文档链接
Ubuntu 安装 Docker Engine 官方文档链接
# Centos 系统安装 Docker Engine 示例
# 1. 卸载旧版本 Dockersudo yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine
进入项目部署文件目录 /opt/film
执行命令 cd /opt/film 进入项目目录
执行构建并运行容器
执行命令 docker compose up -d 构建拉取相关镜像并启动
等待容器构建并启动,启动完毕后可通过 docker compose ps 查看容器是否均正常启动
docker compose 相关命令
docker compose ps 查看已启动的相关容器, docker compose ps -a 查看所有相关容器
docker compose start 启动相关服务容器
docker compose restart 重启相关服务容器
docker compose up -d 以后台服务的方式构建并启动相关服务
docker compose down 删除相关服务容器及关联资源
注意事项:
docker compose 系列命令需在 docker-compose.yml 文件目录下执行
在其他路径下执行需使用 -f /opt/film/docker-compose.yml 指定关联的文件路径
server 相关文件改变后,需使用 docker rmi 容器名|ID 删除 film-film 镜像
2、 1panel 部署
安装 1Panel
- 根据服务器系统选择对应的安装命令,1Panel 官方文档
# RedHat, Centos
curl -sSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o quick_start.sh && sh quick_start.sh
# Ubuntu
curl -sSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o quick_start.sh && sudo bash quick_start.sh
# Debian
curl -sSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o quick_start.sh && bash quick_start.sh
- 通过设置的启动端口,在浏览器中进行访问,默认访问路径 : http://目标服务器 IP 地址:目标端口/安全入口
登录 1Panel 管理面板
启动容器
依次点击 容器 --> 编排 —> 创建编排
- 选择 来源 --> 路径选择,输入 GoFilm 安装文件的存放路径 /opt/film/docker-compose.yml
- 等待编排完成,关闭编排添加页,点击 容器 查看容器启动状态
3. 程序初始化
3.1. 管理后台
登录项目管理后台
访问路径: http://服务器IP:3600/manage
默认账户密码: admin admin
采集设置初始化
-
点击左侧菜单,采集管理 --> 影视采集,选择启用默认采集站点或自行添加站点信息
-
启用需要采集的站点,将对应站点的是否启用状态设置为启用
-
选择主站点 (必要), 在需要设置的站点操作栏点击蓝色编辑按钮,设置站点权重为主站点
-
点击一键采集,选择需要执行采集的站点,设置采集时长为 - 1 (采集全部), 点击确认执行
-
等待采集完成 (手动采集一次即可,后续无需重复手动采集)
影视分类初始化
- 点击左侧菜单,影片管理 --> 影视分类,对需要展示和隐藏的分类进行设置 (用于网站顶部导航以及首页数据展示)
- 点击对应的分类操作栏对分类名称等默认信息进行修改
影片定时更新
- 点击左侧菜单,定时任务 --> 任务管理,选择启用默认的定时任务 (默认每 20 分钟采集一次最新 6 小时内更新的影片)
- 自定义定时任务:
- 任务类型 (自动更新), 指定周期内对所有已启用的采集站点进行更新采集
- 任务类型 (自定义更新), 指定周期内仅对选中的站点进行更新采集
3.2. 网站首页
管理后台进行相关设置并完成主站点采集后,访问首页地址: http://服务器IP:3600/index
首页访问提示导航数据获取失败或服务器繁忙,请等待数据采集完成后,重新访问
4. 常见问题
CPU 架构为 ARM 的服务器部署时 需修改Dockerfile 文件中的 GOARCH=amd64 为 GOARCH=arm
服务器内存偏小时, 可能自行将redis容器关闭, 需在宿主机 /etc/sysctl.conf 文件中追加 vm.overcommit_memory = 1 配置, 并执行 sysctl vm.overcommit_memory=1 使其生效
5. 管理后台基本使用说明
访问 http://xxx.xxx.xxx/manage 进行登录, 用户名 密码: admin admin , 登录成功后自行修改
使用 采集管理 -> 影视采集 功能进行采集站信息的添加和更新, 系统初始化时有预留站点信息, 自行斟酌选择
首先选择一个站点为主站点, 然后选择 采集一周, 一天, 或 全部, 进行主站点的数据采集, (前台数据全来自于主站点, 因此主站点只需要存在一个, 否则会冲突)
主站点信息采集完成后则可在 影片管理 -> 影视分类 中进行主页分类展示信息的设置, 选择需要展示的分类信息, 以及分类的名称管理 (自行摸索如何使用)
附属站点即影片的多个播放来源, 可自行进行选择性的采集添加
定时任务:
系统默认添加一条规则, 但未启用, 该规则为每20分钟更新一次所有已开启的采集站的近3小时内更新的数据, 开启后则基本满足资源更新需求
可自定义定时任务, 使用相关功能可自主选择对某些站点进行定时更新功能
1Panel部署(可视化面板操作)
使用指南
- 后端项目路径
GoFilm/server
, 包含 项目结构说明, 后端程序源码, API接口说明, 本地启动注意事项 查看 - 前端项目路径
GoFilm/client
, 包含 项目结构说明, 前端项目源码, 配置文件说明, 本地启动方式 [查看]/GoFilm/tree/main/client) - 部署文件
GoFilm/film
, 包含项目部署所需的所有文件以及相应的说明文件 查看 - 程序使用文档: 提供项目安装部署以及相应的初始化使用步骤说明 点击前往
环境准备 (Docker)
Linux 服务器
安装 docker, docker compose 服务
Centos 安装 Docker Engine 官方文档链接
Ubuntu 安装 Docker Engine 官方文档链接
Centos 系统安装Docker Engine示例
1. 1卸载旧版本Docker
sudo yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine
1.2. 设置存储库
sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
1.3. 安装最新版本Docker
$ sudo yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
启动 Docker 服务
sudo systemctl start docker
2. 启动流程
如果使用默认配置信息,则执行如下流程
将本项目中的 film 文件夹完整的上传到服务器的 /opt/ 目录下 (放在其他目录下时需同步修改 Dockerfile 以及 docker-compose.yml 文件中的相关路径)
进入服务器中的 /opt/film/ 目录并执行 docker compose build 构建相关docker镜像
在 /opt/film/ 目录下执行命令 docker compose up -d (后台运行服务)
使用 docker ps 命令查看相关服务是否成功启动
等待后端程序初始化工作和数据爬取, 大概3~8分钟左右
停止服务 docker compose down
查看服务容器运行状态 docker ps
在浏览器中访问管理后台: http://xxx.xxx.xxx/manage,
登录 默认 用户名 密码: admin admin
使用后台功能中的采集管理功能进行影视数据采集 (采集任务开启后需等待一段时间)
浏览器中访问前台地址查看效果, 例: http://xxx.xxx.xxx/index (点击管理后台的logo菜单可直接跳转到前台页面)
3.服务配置信息修改
film 后端接口服务配置, film/server 下存放了程序的构建文件, 修改后重新构建镜像即可
mysql 用户名密码和端口信息直接修改 docker-compose.yml 文件中的相关配置即可
redis 服务信息配置需修改 /film/data/redis/redis.conf 文件
nginx 配置文件 /film/data/nginx/nginx.conf
注意事项
mysql 和 redis 服务配置修改后需要同步修改 /film/server/config/DataConfig.go 中的连接地址和账户名信息
配置使用的用户名密码信息需和ocker-compose.yml文件中设置的一致
const (
// mysql服务配置信息修改
mysqlDsn = “用户名:密码$@(服务名:服务端口)/FilmSite?charset=utf8mb4&parseTime=True&loc=Local”
/*redis 配置信息RedisAddr host:portRedisPassword redis访问密码RedisDBNo 使用第几号库
*/
RedisAddr = `服务名:服务端口`
RedisPassword = `密码`
RedisDBNo = 0
)
docker-compose.yml (设置服务的启动端口和服务名以及账户密码信息)
mysql:container_name: film_mysqlimage: mysqlports:- 3610:3306environment:MYSQL_ROOT_PASSWORD: rootMYSQL_DATABASE: FilmSiteredis:container_name: film_redisimage: redisports:- 3620:6379
3. 常见问题
CPU 架构为 ARM 的服务器部署时 需修改Dockerfile 文件中的 GOARCH=amd64 为 GOARCH=arm
服务器内存偏小时, 可能自行将redis容器关闭, 需在宿主机 /etc/sysctl.conf 文件中追加 vm.overcommit_memory = 1 配置, 并执行 sysctl vm.overcommit_memory=1 使其生效
5. 管理后台基本使用说明
访问 http://xxx.xxx.xxx/manage 进行登录, 用户名 密码: admin admin , 登录成功后自行修改
使用 采集管理 -> 影视采集 功能进行采集站信息的添加和更新, 系统初始化时有预留站点信息, 自行斟酌选择
首先选择一个站点为主站点, 然后选择 采集一周, 一天, 或 全部, 进行主站点的数据采集, (前台数据全来自于主站点, 因此主站点只需要存在一个, 否则会冲突)
主站点信息采集完成后则可在 影片管理 -> 影视分类 中进行主页分类展示信息的设置, 选择需要展示的分类信息, 以及分类的名称管理 (自行摸索如何使用)
附属站点即影片的多个播放来源, 可自行进行选择性的采集添加
定时任务:
系统默认添加一条规则, 但未启用, 该规则为每20分钟更新一次所有已开启的采集站的近3小时内更新的数据, 开启后则基本满足资源更新需求
可自定义定时任务, 使用相关功能可自主选择对某些站点进行定时更新功能
目录结构
- client 客户端项目目录 Client简介
- server 服务端接口项目目录 Server简介
- film 项目部署相关配置目录 film 项目安装
- 详细说明请查看具体目录中的README文件
GoFilm-main
├─ client
│ ├─ public
│ │ └─ favicon.ico
│ ├─ src
│ │ ├─ assets
│ │ │ ├─ css
│ │ │ │ ├─ classify.css
│ │ │ │ ├─ film.css
│ │ │ │ └─ pagination.css
│ │ │ └─ image
│ │ │ ├─ 404.png
│ │ │ └─ play.png
│ │ ├─ components
│ │ │ ├─ Loading
│ │ │ │ ├─ index.ts
│ │ │ │ └─ Loading.vue
│ │ │ ├─ FilmList.vue
│ │ │ ├─ Footer.vue
│ │ │ ├─ Header.vue
│ │ │ ├─ RelateList.vue
│ │ │ └─ Util.vue
│ │ ├─ router
│ │ │ └─ router.ts
│ │ ├─ utils
│ │ │ ├─ cookie.ts
│ │ │ └─ request.ts
│ │ ├─ views
│ │ │ ├─ error
│ │ │ │ └─ Error404.vue
│ │ │ ├─ index
│ │ │ │ ├─ FilmClassify.vue
│ │ │ │ ├─ FilmClassifySearch.vue
│ │ │ │ ├─ FilmDetails.vue
│ │ │ │ ├─ Home.vue
│ │ │ │ ├─ Play.vue
│ │ │ │ └─ SearchFilm.vue
│ │ │ └─ IndexHome.vue
│ │ ├─ App.vue
│ │ ├─ main.ts
│ │ ├─ style.css
│ │ └─ vite-env.d.ts
│ ├─ auto-imports.d.ts
│ ├─ components.d.ts
│ ├─ index.html
│ ├─ package.json
│ ├─ README.md
│ ├─ tsconfig.json
│ ├─ tsconfig.node.json
│ └─ vite.config.ts
├─ film
│ ├─ data
│ │ ├─ nginx
│ │ │ ├─ html
│ │ │ │ ├─ assets
│ │ │ │ │ ├─ 404-b813c94a.png
│ │ │ │ │ ├─ index-984712d6.js
│ │ │ │ │ ├─ index-de4c7ff5.css
│ │ │ │ │ └─ play-bb9c8990.png
│ │ │ │ ├─ favicon.ico
│ │ │ │ └─ index.html
│ │ │ └─ nginx.conf
│ │ └─ redis
│ │ └─ redis.conf
│ ├─ server
│ │ ├─ config
│ │ │ └─ DataConfig.go
│ │ ├─ controller
│ │ │ ├─ IndexController.go
│ │ │ └─ SpiderController.go
│ │ ├─ logic
│ │ │ ├─ IndexLogic.go
│ │ │ └─ SpiderLogic.go
│ │ ├─ model
│ │ │ ├─ Categories.go
│ │ │ ├─ Movies.go
│ │ │ ├─ RequestParams.go
│ │ │ ├─ ResponseJson.go
│ │ │ └─ Search.go
│ │ ├─ plugin
│ │ │ ├─ common
│ │ │ │ ├─ dp
│ │ │ │ │ ├─ ProcessCategory.go
│ │ │ │ │ └─ ProcessMovies.go
│ │ │ │ └─ param
│ │ │ │ └─ SimpleParam.go
│ │ │ ├─ db
│ │ │ │ ├─ mysql.go
│ │ │ │ └─ redis.go
│ │ │ └─ spider
│ │ │ ├─ Spider.go
│ │ │ ├─ SpiderCron.go
│ │ │ └─ SpiderRequest.go
│ │ ├─ router
│ │ │ └─ router.go
│ │ ├─ go.mod
│ │ ├─ go.sum
│ │ ├─ main.go
│ │ └─ README.md
│ ├─ docker-compose.yml
│ ├─ Dockerfile
│ └─ README.md
├─ server
│ ├─ config
│ │ └─ DataConfig.go
│ ├─ controller
│ │ ├─ IndexController.go
│ │ └─ SpiderController.go
│ ├─ logic
│ │ ├─ IndexLogic.go
│ │ └─ SpiderLogic.go
│ ├─ model
│ │ ├─ Categories.go
│ │ ├─ Movies.go
│ │ ├─ RequestParams.go
│ │ ├─ ResponseJson.go
│ │ └─ Search.go
│ ├─ plugin
│ │ ├─ common
│ │ │ ├─ dp
│ │ │ │ ├─ ProcessCategory.go
│ │ │ │ └─ ProcessMovies.go
│ │ │ ├─ param
│ │ │ │ └─ SimpleParam.go
│ │ │ └─ util
│ │ │ ├─ FileDownload.go
│ │ │ └─ Request.go
│ │ ├─ db
│ │ │ ├─ mysql.go
│ │ │ └─ redis.go
│ │ └─ spider
│ │ ├─ Spider.go
│ │ └─ SpiderCron.go
│ ├─ router
│ │ └─ router.go
│ ├─ go.mod
│ ├─ go.sum
│ ├─ main.go
│ └─ README.md
├─ LICENSE
└─ README.md
【更新汇总】
关注我的CSDN博客
更多资源可以查看我的CSDN博客
相关文章:

一个开源的多播放源自动采集在线影视网站
这里写自定义目录标题 欢迎使用Markdown编辑器GoFilm简介项目部署1、前置环境准备1.2 redis 配置 film-api 后端服务配置将 GoFilm 项目根目录下的 film 文件夹上传到 linux 服务器的 /opt 目录下 2. 构建运行1. docker 部署1.1 安装 docker , docker compose 环境 注意事项: 2…...
【PhysUnits】10 减一操作(sub1.rs)
一、源码 代码实现了一个类型级别的减一操作(Sub1 trait),通过Rust的类型系统在编译期完成数值减一的计算。 //! 减一操作特质实现 / Decrement operation trait implementation //! //! 提供类型级别的减一计算 / Provides type-level decrement operationuse su…...

深度检测与动态透明度控制 - 基于Babylon.js的遮挡检测实现解析
首先贴出实现代码: OcclusionFader.ts import { AbstractEngine, Material, type Behavior, type Mesh, type PBRMetallicRoughnessMaterial, type Scene } from "babylonjs/core"; import { OcclusionTester } from "../../OcclusionTester"…...
Linux下使用socat将TCP服务转为虚拟串口设备
Linux下使用socat将TCP服务转为虚拟串口设备 socat是一个强大的网络工具,可以将TCP连接转换为虚拟串口设备,这在嵌入式开发、工业控制等领域非常有用。下面详细介绍如何实现这一功能。 基本原理 socat可以通过创建伪终端(PTY)来模拟串口设备ÿ…...

docker push 报错 denied: requested access to the resource is denied
问题:当 docker logout -> docker login 用户登录,但仍然无法 docker push $ docker push <username>/nginx-custom:v1 The push refers to repository [docker.io/jagger/nginx-custom] 340e6d3ea0c7: Preparing 941dd9dd8ee4: Preparing f6…...

epub→pdf | which 在线转换??好用!!
1、PDF派(free&quick) pdf转word_pdf转换成excel_pdf转换成ppt _纬来PDF转换器 评价:目前使用免费,转化的时候有进度条提示,总的来说比较快,50mb的文件在40秒内可以转换完成,推荐 2、pdfconvert(free…...
PBX、IP PBX、FXO 、FXS 、VOIP、SIP 的概念解析以及关系
PBX(Private Branch Exchange) 概念 :PBX 是专用交换机,是一种在企业或组织内部使用的电话交换系统。它允许内部用户之间以及内部用户与外部公共电话网络(PSTN)之间进行通信。例如,在一个大型企…...

MySQL数据高效集成到金蝶云星空的技术分享
MySQL数据集成到金蝶云星空的技术案例分享:SR新建调拨单内部供应商-深圳天一 在企业信息化系统中,数据的高效流动和准确对接是实现业务流程自动化的关键。本文将聚焦于一个具体的系统对接集成案例——将MySQL中的数据集成到金蝶云星空,以支持…...
git 命令之-git cherry-pick
今天得到一个通知,这个业务版本里面部分已经开发但还没测试的内容要新开一个分支提交,但是我已经有几个提交上去了,难道只能一个一个文件复制到新的分支吗?我不,我找到了这个git命令,可以解决我的困惑&…...
如何在STM32CubeMX下为STM32工程配置调试打印功能
为STM32工程配置调试打印功能 一、配置调试用的打印串口 #include <stdio.h> //标准输入输出库//1.在STM32CubeMX中打开并配置好某串口设备; //2.在main.c文件中添加如下代码行对输入输出重定向; //3.在文件开头包含stdio.h头文件。 #pragma im…...

Linux系统 - 基本概念
介绍一些Linux系统的基本概念 1 操作系统的核心—内核 “操作系统”通常包含两种不同含义。 1.指完整的软件包,这包括用来管理计算机资源的核心层软件,以及附带的所有标准软件工具,诸如命令行解释器、图形用户界面、文件操作工具…...
kerberos在无痕浏览器 获取用户信息失败 如何判断是否无痕浏览器
kerberos在无痕浏览器 获取用户信息失败 如何判断是否无痕浏览器 js 代码 其他地方用直接导入js getCurrentUserId 这是自己后端获取 域账号地址 我是成功返回200 //true普通浏览器 fasle 无痕浏览器 export const checkBrowserMode async () > {try {const response a…...
在h5端实现录音发送功能(兼容内嵌微信小程序) recorder-core
本文将通过一个实际的 Vue3 组件示例,带你一步步实现“按住录音,松开发送,上滑取消”的语音录制功能。 我们将使用强大且小巧的开源库 recorder-core,支持 MP3、WAV、AAC 等编码格式,兼容性较好。 🔧 项目…...

PDF电子发票数据提取至Excel
声明:本软件是吾爱大佬th4c3y原创,本人只是搬运工! 发票识别更新记录 【2025-3-14】更新 v2.0 在字段设置中新增自定义字段(仅在 PDF 正则式接口下生效),支持自定义正则表达式或固定字符。 自定义字段会…...

【身份证识别表格】把大量手机拍摄的身份证信息转换成EXCEL表格的数据,拍的身份证照片转成excel表格保存,基于WPF和腾讯OCR的实现方案
基于WPF和腾讯OCR的身份证照片转Excel方案 应用场景 企业人事管理:新员工入职时批量录入数百份身份证信息,传统手动录入易出错且耗时。通过OCR自动提取姓名、身份证号等字段,生成结构化Excel表格,效率提升10倍以上。 …...

FPGA高速接口 mipi lvds cameralink hdml 千兆网 sdi
mipi: https://blog.csdn.net/SDJ_success/article/details/146541776 cameralink CameraLink协议 CameraLink协议是一种专门针对机器视觉应用领域的串行通信协议,它使用低压差分信号(LVDS)进行数据的传输和通信。CameraLink标准是在ChannelLink标准的基础上多加了…...

Linux路径解析指南:逻辑路径 vs 实际路径详解
在 Linux 系统中,逻辑路径(Logical Path)和 实际路径(Physical Path)是两个不同的概念,主要区别在于它们如何解析文件或目录的位置。以下是详细解释: 目录 1. 逻辑路径(Logical Path…...

Azure 公有云基础架构与核心服务:从基础到实践指南
🔥「炎码工坊」技术弹药已装填! 点击关注 → 解锁工业级干货【工具实测|项目避坑|源码燃烧指南】 一、基础概念 Azure 的基础架构由多个核心组件构成,理解这些概念是掌握其技术框架的第一步: 地理区域(Geographic R…...

【运维_日常报错解决方案_docker系列】一、docker系统不起来
今天忽然想起来哎,还有一台”尘封“着的服务器,好久没用了,就随便打开登了登,然后想看一下服务器上面还有正在跑着的容器服务吗,然后使用docker ps 发现报错了。 然后重启也是下面这个状态。 查看docker状态…...

C# 数组与字符串:全面解析与应用实践
在C#编程语言中,数组和字符串是两种最基础也是最重要的数据类型。无论是简单的控制台应用程序,还是复杂的企业级系统,数组和字符串都扮演着不可或缺的角色。本文将全面深入地探讨C#中数组和字符串的特性、使用方法、性能考量以及实际应用场景…...
前端vue中使用signalr
一、引入SignalR库 使用NPM引入SignalR库 npm install @microsoft/signalrJs文件中引入 import * as signalR from @microsoft/signalr;二、初始化连接 这一步需要指定SignalR Hub的URL。 const connection = new signalR.HubConnectionBuilder().withUrl("https://y…...
Stable Diffusion底模对应的VAE推荐
以下是主流Stable Diffusion底模对应的VAE推荐表格: 底模版本推荐VAE类型说明SD1.5SD1.5专用VAE通常使用vae-ft-mse-840000-ema-pruned.safetensorsSD2.0SD1.5兼容VAE或SD2专用VAE部分SD2模型需配套512-ema-only.vae.ptSD3内置VAESD3系列模型通常自带集成VAE无需额…...
centos7.5安装kubernetes1.25.0
centos7.5安装kubernetes centos7.5kubernetes1)准备阶段准备2台虚拟机配置静态IP修改主机名桥接设置配置阿里云的repo源配置k8s切国际源配置时间同步安装基础软件包 2)安装containerd服务安装配置开启启动 3)安装k8s4)安装kubersphere下载helm安装包解压将helm配置…...

AT2659S射频前端芯片技术解析:L1频段低噪声高增益GNSS信号放大
以下是关于AT2659S L1频段卫星导航射频前端芯片的客观描述,严格基于用户提供的原始信息,采用分享式表述,保持参数和核心内容不变: AT2659S芯片概述 AT2659S是一款基于SiGe工艺的射频前端芯片,专为L1频段&#…...

ROS2学习(15)------ROS2 TF2 机器人坐标系管理器
操作系统:ubuntu22.04 IDE:Visual Studio Code 编程语言:C11 ROS版本:2 在 ROS 2 中,TF2(Transform Library, v2) 是一个非常核心的工具库,用于管理多个坐标系之间的 变换关系(tran…...
每日c/c++题 备战蓝桥杯(洛谷P3382 三分法求极值详解)
洛谷P3382 三分法求极值详解 题目描述 P3382 三分法 要求在给定区间内寻找一个多项式函数的最大值点。题目保证函数在区间内先严格递增后严格递减(单峰函数),适合使用三分法求解。 算法原理 三分法核心思想 对于单峰函数,在区…...

Vue+css实现扫描动画效果(使用@keyframes scan)
实现效果 扫描效果 参考链接 MDN Web Docs: CSS Animations 关键代码 示例代码 <div class"scanner-container"><div class"scanner-line"></div><div class"scanner-icon">📷</div><p>Scan m…...
Windows 配置 ssh 秘钥登录 Ubuntu
在 Windows 上推送 SSH 公钥到远程服务器(类似于 Linux 上的 ssh-copy-id)可以通过以下几种方法实现: ** 手动复制公钥内容** 查看本地公钥内容:type $env:USERPROFILE\.ssh\id_rsa.pub登录远程服务器,将公钥内容粘贴…...
Conda:环境移植及更新1--使用conda-pack
更多内容:XiaoJ的知识星球 目录 一、使用conda-pack1.安装 conda-pack2.移植整个 Anaconda 环境3.移植单个虚拟环境4.验证是否生效 在相同Linux设备上移植Miniconda3(Anaconda3同理)常用方法有。 使用conda-pack:使用conda-pack工…...
github好玩的工具
以下是 GitHub 上一些有趣且实用的开源工具推荐,涵盖 AI 应用、效率提升、趣味开发等方向,结合最新趋势和项目热度整理: 一、AI 与深度伪造工具 Deep-Live-Cam 仅需一张图片即可在视频直播中实时替换人脸,适用于内容创作和虚拟角色开发,支持多平台硬件运行(如 NVIDIA CUD…...