stable diffusion webui 安装部署(linux系统)

2023-11-08

文中部署stable diffusion webui所使用的机器是腾讯云服务器linux系统,centos7

一 环境准备

在这里使用anaconda安装,优势就是可以方便地安装和管理软件包,同一系统上可以同时使用不同版本的 Python 和第三方软件包。如果你需要安装多个系统,而且依赖软件版本不同,那就安装anaconda吧。

1、下载Anaconda

wget https://repo.anaconda.com/archive/Anaconda3-2023.03-1-Linux-x86_64.sh

如果没有wget则可以通过以下命令安装yum install wget -y

2、安装Anaconda

增加执行权限: chmod +x Anaconda3-2023.03-1-Linux-x86_64.sh

开始执行:./Anaconda3-2023.03-1-Linux-x86_64.sh

跟着提示来做,让回车就回车,让yes就yes,安装成功后会显示如下提示

3、创建Stable Diffusion虚拟环境

在使用 Conda 管理 Python 环境时,默认情况下会创建一个名为 base 的虚拟环境,该环境是全局共享的,即在该环境下安装的 Python 包和库都会对系统上的其他所有虚拟环境和全局环境可见。

如果不进行设置,重新启动就变成下面这个样子

(base) [root@VM-0-4-centos ~]#

为了清晰,也为了后面再部署其他的AI应用,我们给Stable Diffusion创建单独的虚拟环境。

创建虚拟环境:conda create -n sd python=3.10.6


查看环境列表:conda evn list 

 安装git

conda install git

查看git版本号

二: stable-diffusion-webui 安装部署

1、下载代码stable-diffusion-webui

git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui

2、启动webu.sh

切换到 stable-diffusion-webui目录

方法一: 运行 bash webui.sh如果是root用户,需要注释掉webui.sh中关于root权限的判断。

 方法二:root用户还可以直接运行 bash webui.sh -f

三:常见报错信息

接下来就是解决报错信息了。

1、ERROR: This script must not be launched as root, aborting...

启动时候加个参数: bash webui.sh -f 这样就可以以root启动了。

如果嫌麻烦可以修改 webui.sh脚本代码

2、No matching distribution found for torch==2.0.1

Collecting torch==2.0.1

Could not find a version that satisfies the requirement torch==2.0.1 (from versions: 1.0.0, 1.0.1, 1.0.1.post2, 1.1.0, 1.2.0, 1.3.0, 1.3.1, 1.4.0, 1.5.0, 1.5.1, 1.6.0, 1.7.0, 1.7.1, 1.8.0, 1.8.1, 1.9.0, 1.9.1, 1.10.0, 1.10.1, 1.10.2)

No matching distribution found for torch==2.0.1

You are using pip version 9.0.3, however version 23.1.2 is available.

You should consider upgrading via the 'pip install --upgrade pip' command.

Traceback (most recent call last):

File "launch.py", line 38, in <module>

main()

File "launch.py", line 29, in main

prepare_environment()

File "/home/sdui/stable-diffusion-webui/modules/launch_utils.py", line 254, in prepare_environment

run(f'"{python}" -m {torch_command}', "Installing torch and torchvision", "Couldn't install torch", live=True)

File "/home/sdui/stable-diffusion-webui/modules/launch_utils.py", line 101, in run

raise RuntimeError("\n".join(error_bits))

RuntimeError: Couldn't install torch.

Command: "/home/sdui/stable-diffusion-webui/venv/bin/python3" -m pip install torch==2.0.1 torchvision==0.15.2 --extra-index-url https://download.pytorch.org/whl/cu118

Error code: 1

问题排查:

1、pip版本不对,导致下载文件报错

conda中默认带的旧版本pip,更换为pip3

卸载:conda uninstall pip

安装:conda install -c anaconda pip

然后运行:bash webui.sh

2、如果无法自动完成下载安装,可以手动进行安装

查看下CUDA版本版本

 

nvidia-smi

cat /usr/local/cuda/version.txt

手动选择版本 https://pytorch.org/get-started/locally/

选择好对应的版本,conda install pytorch torchvision torchaudio pytorch-cuda=11.7 -c pytorch -c nvidia

运行之后,就开始进入各种依赖的下载

3、git版本太低

解决方案:conda install git

[notice] To update, run: pip install --upgrade pip

Installing gfpgan

Installing clip

Installing open_clip

Cloning Stable Diffusion into /app/stable-diffusion-webui/repositories/stable-diffusion-stability-ai...

Traceback (most recent call last):

File "/app/stable-diffusion-webui/launch.py", line 38, in <module>

main()

File "/app/stable-diffusion-webui/launch.py", line 29, in main

prepare_environment()

File "/app/stable-diffusion-webui/modules/launch_utils.py", line 288, in prepare_environment

git_clone(stable_diffusion_repo, repo_dir('stable-diffusion-stability-ai'), "Stable Diffusion", stable_diffusion_commit_hash)

File "/app/stable-diffusion-webui/modules/launch_utils.py", line 150, in git_clone

run(f'"{git}" -C "{dir}" checkout {commithash}', None, "Couldn't checkout {name}'s hash: {commithash}")

File "/app/stable-diffusion-webui/modules/launch_utils.py", line 101, in run

raise RuntimeError("\n".join(error_bits))

RuntimeError: Couldn't checkout {name}'s hash: {commithash}.

Command: "git" -C "/app/stable-diffusion-webui/repositories/stable-diffusion-stability-ai" checkout cf1d67a6fd5ea1aa600c4df58e5b47da45f6bdbf

Error code: 129

stderr: Unknown option: -C

usage: git [--version] [--help] [-c name=value]

[--exec-path[=<path>]] [--html-path] [--man-path] [--info-path]

[-p|--paginate|--no-pager] [--no-replace-objects] [--bare]

[--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>]

<command> [<args>]

4、报错:libGL.so.1: cannot open shared object file: No such file or directory

解决方案:yum install mesa-libGL

Python 3.10.9 (main, Jan 11 2023, 15:21:40) [GCC 11.2.0] Version: v1.3.2 Commit hash: baf6946e06249c5af9851c60171692c44ef633e0 Cloning Taming Transformers into /app/stable-diffusion-webui/repositories/taming-transformers... Cloning K-diffusion into /app/stable-diffusion-webui/repositories/k-diffusion... Cloning CodeFormer into /app/stable-diffusion-webui/repositories/CodeFormer... Cloning BLIP into /app/stable-diffusion-webui/repositories/BLIP... Installing requirements for CodeFormer Installing requirements Launching Web UI with arguments: -f No module 'xformers'. Proceeding without it. Traceback (most recent call last): File "/app/stable-diffusion-webui/launch.py", line 38, in <module> main() File "/app/stable-diffusion-webui/launch.py", line 34, in main start() File "/app/stable-diffusion-webui/modules/launch_utils.py", line 330, in start import webui File "/app/stable-diffusion-webui/webui.py", line 49, in <module> from modules import shared, sd_samplers, upscaler, extensions, localization, ui_tempdir, ui_extra_networks, config_states File "/app/stable-diffusion-webui/modules/sd_samplers.py", line 1, in <module> from modules import sd_samplers_compvis, sd_samplers_kdiffusion, shared File "/app/stable-diffusion-webui/modules/sd_samplers_compvis.py", line 9, in <module> from modules import sd_samplers_common, prompt_parser, shared File "/app/stable-diffusion-webui/modules/sd_samplers_common.py", line 5, in <module> from modules import devices, processing, images, sd_vae_approx, sd_samplers, sd_vae_taesd File "/app/stable-diffusion-webui/modules/processing.py", line 11, in <module> import cv2 File "/app/stable-diffusion-webui/venv/lib/python3.10/site-packages/cv2/__init__.py", line 181, in <module> bootstrap() File "/app/stable-diffusion-webui/venv/lib/python3.10/site-packages/cv2/__init__.py", line 153, in bootstrap native_module = importlib.import_module("cv2") File "/root/anaconda3/envs/sd/lib/python3.10/importlib/__init__.py", line 126, in import_module return _bootstrap._gcd_import(name[level:], package, level) ImportError: libGL.so.1: cannot open shared object file: No such file or directory

四: conda 常用的命令

  1、创建环境:conda create --name 环境名称

        用途:用于创建一个新的Conda环境,可以指定环境的名称。

  2、激活环境:conda activate 环境名称

          用途:用于激活指定名称的Conda环境。

  3、停用环境:conda deactivate

         用途:用于停用当前激活的Conda环境。

  4、删除环境:conda remove --name 环境名称 --all

         用途:用于删除指定名称的Conda环境,--all参数表示删除环境及其所有安装的包。

  5、安装包:conda install 包名称

         用途:用于在当前环境中安装指定的包。

  6、升级包:conda update 包名称

        用途:用于更新已安装包的版本。

  7、卸载包:conda remove 包名称

         用途:用于从当前环境中卸载指定的包。

  8、查看已安装的包:conda list

        用途:用于列出当前环境中已安装的包。

  9、搜索包:conda search 包名称

        用途:用于在Conda仓库中搜索指定的包。

  10、创建环境配置文件:conda env export > environment.yaml

        用途:用于将当前环境的配置导出到一个YAML文件中,以便在其他地方进行复制或重建环境。

  11、查看配置信息:conda config --show

        显示当前的Conda配置信息,包括通用配置、环境配置和用户配置。

  12、查看某个配置项的值:conda config --show 配置项

        显示特定配置项的当前值,例如:conda config --show channels用于显示当前配置的通道列表。

  13、设置配置项的值:conda config --set 配置项=值

        例如:conda config --set channels conda-forge用于将通道设置为conda-forge。

  14、添加通道:conda config --add channels 通道名称

        向配置中添加一个新的通道,使Conda在包搜索和安装时优先考虑该通道。

  15、移除通道:conda config --remove channels 通道名称

        从配置中移除指定的通道,使Conda不再使用该通道。

  16、列出所有通道:conda config --get channels

         列出当前配置中所有配置的通道。

  17、重置配置项:conda config --remove-key 配置项

        重置指定配置项的值为默认值。

  18、编辑配置文件:conda config --edit

        打开配置文件以进行手动编辑,可以修改各种配置选项。

  19、创建具有指定版本的环境:

    conda create --name myenv python=3.10.6

  20、从环境中导出和导入环境配置

  导出环境配置

  conda env export --name myenv --file environment.yaml

  导入环境配置

  conda env create --file environment.yaml

  21、创建一个虚拟环境的克隆:

  conda create --name myclone --clone myenv

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

stable diffusion webui 安装部署(linux系统) 的相关文章

随机推荐

  • [转]QNX与Linux OS比较优劣-QNX与Linux两家未来有望独霸车载电子操作系统

    如果你认为本系列文章对你有所帮助 请大家有钱的捧个钱场 点击此处赞助 赞助额0 1元起步 多少随意 声明 本文只用于个人学习交流 若不慎造成侵权 请及时联系我 立即予以改正 锋影 email 174176320 qq com 车载电子操作系
  • 密码学与网络安全笔记整理-数据完整性技术

    1 数据完整性 类似于通信中的校验码功能 在密码学领域数据完整性用于验证收到信息的正确性 校验收到的信息是否经过篡改 校验收到的信息是真实的发送者发送而非伪造 发送者通过编码为消息增加一些 冗余 生成一个校验值 并将该校验值附在消息之后 接
  • 基于深度学习的DDN图像去雨算法实战准备指南

    一 DDN图像去雨算法的复现代码下载 1 DDN的图像去雨算法的代码分为tensorflow版本和matlab版本 下载的链接分别如下 1 DDN tensorflow下载 https download csdn net download
  • border-box和content-box最直观的区别和解释

    Chrome浏览器box sizing默认是content box content box就是元素的width和height决定了元素的宽高 这意味着元素的border和padding等不能算在元素的width和height中 paddin
  • python怎么用for循环找出最大值_用for循环语句写一个在输入的十个数字中求最大和最小值的python程序应该怎么写?...

    在输入的十个数字中求最大和最小值的 python 代码 这个需求 在不同时间来看 解题思路不同 所需要的 python 知识点不同 作为萌新的我 为此特意整理了 3 种解法 以及相应的知识点笔记 解法A 不使用列表 min 或 max 只是
  • 笔记:Element UI Dialog弹框 水平垂直居中

    需求 element dialog 默认不是水平居中的 需要改为水平垂直居中 方法一 全局设置 在App vue中添加代码 全局设置 element ui dialog水平垂直居中 el dialog left 50 top 50 tran
  • 超全超详细的安装nvidia显卡驱动教程

    最近想做的事情有点多 感觉卡不够用了 师兄不知道在实验室机房哪个地方找了一个两卡的废旧服务器 开始上手才发现服务器显卡驱动都没装 显卡还是个GTX1060 6G 甜点级别显卡 跑点小东西玩玩 打点小比赛行了 准备工作 安装驱动 1 使用标准
  • udp包最大数据长度是多少

    原文地址 https blog csdn net caoshangpa article details 51530685 每个udp包的最大大小是多少 65507 约等于 64K 为什么最大是65507 因为udp包头有2个byte用于记录
  • 谷粒商城(一)

    谷粒商城 一 1 环境搭建 安装 docker docker 安装 mysql docker 安装 redis 安装配置 git 准备工具 IDEA VsCode 从 gitee 初始化项目 2 创建微服务项目 1 创建项目 2 初始化数据
  • 大疆睿炽Tello EDU无人机python操控之三——使用easyGUI模拟操控界面控制Tello EDU

    使用easyGUI模拟操控界面控制Tello EDU 说到easyGUI这个模块 大家应该都不陌生了 模块名中有个 easy 是的 这代表它用起来很简单 这个模块就是一个能够轻易创建用户界面的工具 所以本篇文章我们将实现使用用户界面来对Te
  • Gateway、Nacos依赖启动问题解决

    今天是2022年开工的第一天 本是摸鱼带薪的一天 最终被一个bug所打扰 这怎么可以呢 新的一年第一个bug记录一下 祝大家 新年快乐 摸摸头 代码样例 报错如下 启动即报错 直接好家伙 下面是排查报错的步骤 相信英语跟我一样不好的同学 翻
  • 全排列算法的c++实现(非递归)

    本文算法出自 梦辽软件 只实现了文中所说的第五种算法 全排列 非递归求顺序 算法 1 建立位置数组 即对位置进行排列 排列成功后转换为元素的排列 2 按如下算法求全排列 设P是1 n 位置编号 的一个全排列 p p1 p2 pn p1 p2
  • Dynamics CRM IFD部署之后遇到的登录问题

    Dynamics CRM IFD部署之后遇到的登录问题 证书问题 共用证书 域控问题 跨域登录 登录后报404 证书问题 共用证书 因为公司只给了一个证书 且UAT环境和生产环境都进行了IFD部署 当在同一个浏览器同时登录UAT和生产环境就
  • COCO数据集annotation内容

    本文转载自 http blog csdn net qq 30401249 article details 72636414 找了很多coco数据集的资料 感觉里面的东西有些还是不清楚 顺便就转载下 instances train2014 j
  • 2020年度全球人工智能十大事件

    当前 新一代人工智能技术在全球蓬勃兴起 迅猛发展 与大数据 区块链 5G等新技术相互融合 相互因应 为经济社会发展尤其是数字经济发展注入新动能 正在深刻改变社会生产生活方式 与此同时 如何在新技术变革浪潮中始终立于主动 实现人工智能等前沿科
  • 机器学习基础篇-数据清洗

    Capture 1 在机器学习的工作流中 数据清洗环节尤为重要 接下来首先让我们看一下数据预处理的流程图 总的来说 主要包含下面三大块 收集数据 标注数据 提升数据质量 Capture 2 NO 1 Data Errors 所谓数据错误 就
  • 【2023】Nacos下载与安装配置(2.2.3版本示例)

    目录 1 Nacos概述 2 下载地址和版本 2 修改配置文件 2 1 配置鉴定密钥 自定义密钥 2 2 配置数据库 3 启动 4 项目注册 4 1 配置yml文件 4 2 在启动类上加入注解 4 3 使用 bat文件启动 需要学习naco
  • 【WIFI】802.11AX(WIFI6)无线协商速率计算

    从2019年末的iphone11系列开始 到后来的三星S10 在手机参数中总会有WIFI6这么一条参数 这里的WIFI6就是802 11的一个比较新的协议规范 802 11AX 因为笔者软件出生 对射频了解的不多 基本上也是靠查查找到 学习
  • 解决stylelint报错:Expected double quotes

    目录 背景 处理 背景 问题原因 stylelint对css期望引用时使用双引号 解决方法 修改stylelint 中css引入图片必须使用双引号的检查 注意 只希望修改掉stylelint 中css用url引入图片必须使用双引号的检查 而
  • stable diffusion webui 安装部署(linux系统)

    文中部署stable diffusion webui所使用的机器是腾讯云服务器linux系统 centos7 一 环境准备 在这里使用anaconda安装 优势就是可以方便地安装和管理软件包 同一系统上可以同时使用不同版本的 Python