腾讯云安装stable diffusion webui

安装项目中的提示操作:GitHub – AUTOMATIC1111/stable-diffusion-webui: Stable Diffusion web UI

遇到的问题:

  1. github中clone项目的时候慢:
  2. 安装torch的时候源慢:
    • 安装的时候等一会,一般是前面阶段比较慢,到后面速度就会上来。
    • 可以在launch.py中将对应的源替换掉,使用清华的源。
  3. 一些缺失的包:
    • ERROR: Cannot activate python venv
    • python3 -m venv venv/
      1. 安装TCMalloc
        • apt install libgoogle-perftools-dev
  4. 服务器重启后找不到显卡驱动,报错 torch is not able to use gpu
    • apt update 更新的时候 内核的header没安装成功,重启了服务器,造成显卡驱动没有正常运行 重新安装了一下 kernel header
    • sudo apt install linux-headers-$(uname -r)
  5. 无法使用公网访问:
    • Could not create share link. Please check your internet connection or our status page: https://status.gradio.app
      • 没解决,并且sd默认的公网服务并不稳定。  使用nginx反向代理7860端口解决
      • 换海外服务器
  6. ERROR: Cannot activate python venv, aborting…
    • python3 -c ‘import venv’ #should not return any errors
    • python3 -m venv venv/ #should populate the directory
  7. nginx做反向代理,需要增加socket支持:
    • location / {
    • proxy_pass http://127.0.0.1:7860;
    • proxy_http_version 1.1;
    • proxy_set_header Upgrade $http_upgrade;
    • proxy_set_header Connection “Upgrade”;
    • proxy_read_timeout 300s;
    • proxy_connect_timeout 300s;
    • }
  8. 运行: ./webui.sh –share –enable-insecure-extension-access

使用cloudflare代理flask启用https服务

问题1:使用cloudflare的dns回源服务器的时候,出现了http和https不断反复重定向

问题2:  flask只能启用http服务,需要启用https

  • 使用lnmp vhost add 添加域名,配置ssl证书
  • pip install gunicorn
  • 新建文件 gunicorn_start.sh(解决问题2),运行sh gunicorn_start.sh
#!/bin/bash
 
# 定义Flask应用程序的名称和入口文件名
APP_NAME=app
APP_ENTRYPOINT=app:app
 
# 定义SSL证书和私钥文件的路径
CERT_FILE=/path/to/cert.pem
KEY_FILE=/path/to/key.pem
 
# 启动Gunicorn
gunicorn $APP_ENTRYPOINT \
  --bind 0.0.0.0:443 \
  --certfile $CERT_FILE \
  --keyfile $KEY_FILE \
  --workers 4 \
  --worker-class gthread \
  --threads 2 \
  --timeout 120 \
  --log-level=info \
  --access-logfile=- \
  --error-logfile=-
  •  nginx  配置
server
    {
        listen 443 ssl http2;
        #listen [::]:443 ssl http2;
        server_name your-site ;
        index index.html index.htm index.php default.html default.htm default.php;
        root  /home/wwwroot/your-site;
 
        ssl_certificate /usr/local/nginx/conf/ssl/your-site/fullchain.cer;
        ssl_certificate_key /usr/local/nginx/conf/ssl/your-site/your-site.key;
        ssl_session_timeout 5m;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;
        ssl_prefer_server_ciphers on;
        ssl_ciphers "TLS13-AES-256-GCM-SHA384:TLS13-CHACHA20-POLY1305-SHA256:TLS13-AES-128-GCM-SHA256:TLS13-AES-128-CCM-8-SHA256:TLS13-AES-128-CCM-SHA256:EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5";
        ssl_session_cache builtin:1000 shared:SSL:10m;
        # openssl dhparam -out /usr/local/nginx/conf/ssl/dhparam.pem 2048
        ssl_dhparam /usr/local/nginx/conf/ssl/dhparam.pem;
 
 
        # Deny access to PHP files in specific directory
        #location ~ /(wp-content|uploads|wp-includes|images)/.*\.php$ { deny all; }
 
        location / {
                proxy_pass https://127.0.0.1:5000;
                proxy_set_header Host $host;
                proxy_set_header X-Real-IP $remote_addr;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }
        access_log  /home/wwwlogs/your-site.log;
 
    }
  • cloudflare找到对应的域名,点击左侧的 “SSL/TLS”。 将“Your SSL/TLS encryption mode ” 配置成FULL或者FULL(Strict) (否则不支持https,解决问题1)

ubuntu18安装Python3.7

  1. ubuntu18系统自带了python2.7和python3.6;
  2. 不要卸载ubuntu自带的python版本;
  3. ubuntu下不同版本的python可以共存,可直接安装python3.7。

1.升级包索引和软件

sudo apt update
sudo apt upgrade -y

2.安装编译所需包

sudo apt install build-essential zlib1g-dev libbz2-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev wget

3.下载Python3.7

官网下载Python-3.7.4.tgz文件

wget https://www.python.org/ftp/python/3.7.4/Python-3.7.4.tgz

4.解压Python安装包

tar -xzvf Python-3.7.4.tgz

5.编译和安装

cd Python-3.7.4
./configure --prefix=/usr/local/src/python37  # 配置安装位置
sudo make
sudo make install

6.建立软连接

sudo ln -s /usr/local/src/python37/bin/python3.7 /usr/bin/python3.7
sudo ln -s /usr/local/src/python37/bin/pip3.7 /usr/bin/pip3.7

接下来你就可以使用python3.7,而不会影响系统自带的python2.7和python3.6

如果你想用python3.7替换掉系统默认的python3

sudo rm -rf /usr/bin/python3
sudo ln -s /usr/local/src/python37/bin/python3.7 /usr/bin/python3

默认ubuntu系统中没有pip3,直接建立软连接即可。
sudo ln -s /usr/local/src/python37/bin/pip3.7 /usr/bin/pip3

输入python3默认就是你安装好的python3.7了

更改pip源

  1. 临时使用:

在使用pip的时候加参数-i

例如:pip install -i https://pypi.tuna.tsinghua.edu.cn/simple gevent

常用的pip源如下:

pypi 清华大学源:https://pypi.tuna.tsinghua.edu.cn/simple
pypi 豆瓣源 :http://pypi.douban.com/simple/
pypi 腾讯源:http://mirrors.cloud.tencent.com/pypi/simple
pypi 阿里源:https://mirrors.aliyun.com/pypi/

  1. 永久修改:

linux下 :

mkdir ~/.pip
vi ~/.pip/pip.conf
添加内容如下:

[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
windows下,直接在user目录中创建一个pip目录,如:C:\Users\xx\pip,新建文件pip.ini,内容如下

[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple