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

Comfyui实例容器运行横向扩展

说明:此部署是基于之前的Comfyui部署进行的,为了实例的横向扩展
在此感谢@YanWenKun大佬提供的基础镜像
镜像地址docker pull yanwk/comfyui-boot:latest
此处机器配置为16C64G + 4090*1 Ubuntu 24.04 64位

安装docker

sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
echo   "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get install docker-ce

安装nvidia-container-toolkit
安装此工具支持容器调用gpu

curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg \&& curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | \sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
sed -i -e '/experimental/ s/^#//g' /etc/apt/sources.list.d/nvidia-container-toolkit.list
sudo apt-get update
sudo apt-get install -y nvidia-container-toolkit
sudo nvidia-ctk runtime configure --runtime=docker
systemctl restart docker

容器启动Comfyui实例
在Comfyui挂载目录中创建.download-complete文件,禁止启动的时候下载数据

touch /data/comfyui/.download-complete
docker run -d -it --name comfyui --gpus "device=0" -p 30300:8188 --user root --disable-smart-memory -v /data/comfyui:/home/runner image-repository/public/comfyui:base

目的

做此横向扩展作用于单机多卡机器,使一个comfyui实例使用一张或者多张指定显卡,并用一个upstream程序获取所有实例队列情况,使其提供单独的对外接口,后台可以实现自动调度。以此应对队列等待情况

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 【ROS 最简单教程 003/300】ROS 快速体验:Hello World
  • C# Where关键字
  • 数学建模--蒙特卡罗随机模拟
  • 嵌入式Linux系统中pinictrl框架基本实现
  • 数学建模--禁忌搜索
  • Kafka操作
  • 现代前端架构介绍(第三部分):深入了解状态管理层及其对前端App的影响
  • tcp westwood 比 reno,cubic 好在哪
  • MinIO:高性能轻量云存储轻松搭建与springboot应用整合实践
  • JavaWeb学习——mybatis
  • 过滤器与拦截器的区别与应用
  • 2.外部中断(EXTI)
  • 猫头虎分享:从零开始掌握ChatGPT的实用技巧与多样应用
  • ​十个常见的 Python 脚本 (详细介绍 + 代码举例)
  • Python网络爬虫面试题3
  • 【译】JS基础算法脚本:字符串结尾
  • 【node学习】协程
  • Java 最常见的 200+ 面试题:面试必备
  • nginx 负载服务器优化
  • node-sass 安装卡在 node scripts/install.js 解决办法
  • Otto开发初探——微服务依赖管理新利器
  • Spring Cloud Alibaba迁移指南(一):一行代码从 Hystrix 迁移到 Sentinel
  • Spring声明式事务管理之一:五大属性分析
  • Theano - 导数
  • Vue--数据传输
  • webpack+react项目初体验——记录我的webpack环境配置
  • 大型网站性能监测、分析与优化常见问题QA
  • 力扣(LeetCode)56
  • 那些被忽略的 JavaScript 数组方法细节
  • 体验javascript之美-第五课 匿名函数自执行和闭包是一回事儿吗?
  • 通过npm或yarn自动生成vue组件
  • 为什么要用IPython/Jupyter?
  • 1.Ext JS 建立web开发工程
  • const的用法,特别是用在函数前面与后面的区别
  • 回归生活:清理微信公众号
  • ​14:00面试,14:06就出来了,问的问题有点变态。。。
  • ​软考-高级-系统架构设计师教程(清华第2版)【第12章 信息系统架构设计理论与实践(P420~465)-思维导图】​
  • #565. 查找之大编号
  • #数学建模# 线性规划问题的Matlab求解
  • (react踩过的坑)antd 如何同时获取一个select 的value和 label值
  • (附源码)ssm高校运动会管理系统 毕业设计 020419
  • (回溯) LeetCode 78. 子集
  • (十八)Flink CEP 详解
  • (学习日记)2024.03.12:UCOSIII第十四节:时基列表
  • (转载)深入super,看Python如何解决钻石继承难题
  • .mysql secret在哪_MYSQL基本操作(上)
  • .NET Core 和 .NET Framework 中的 MEF2
  • .NET Core 项目指定SDK版本
  • .NET/C# 使用 SpanT 为字符串处理提升性能
  • .NET命令行(CLI)常用命令
  • .net使用excel的cells对象没有value方法——学习.net的Excel工作表问题
  • .NET微信公众号开发-2.0创建自定义菜单
  • .py文件应该怎样打开?
  • [ IOS ] iOS-控制器View的创建和生命周期
  • [10] CUDA程序性能的提升 与 流