Stable DiffusionをDocker Desktopで使ってみる

Stable Diffusion

画像生成AIのStable DiffusionをWindowsで動かしてみました。せっかくなので手順をまとめてみました。簡単に動かすため今回はDockerを使いました。手順を確認した環境は下記の通りです。

  • CPU: Ryzen9 5950X
  • Memory: DDR4 128GB
  • GPU: Nvidia GeForce RTX 3080 Mem: 10GB
  • OS: Windows11 Pro 22H2 OSビルド22621.2861

事前準備

必要なソフトのインストール

Stable DiffutionをDocker上で動かすには下記の2つのソフトの導入が必要です。

  • Ubuntu on WSL2
  • Docker Desktop

これらのソフトの導入方法は下記のページを参考にさせていただきました。大変助かりました。

Stable Diffusionのインストール

Docker imageのダウンロード

Stable DiffutionのDocker imageをダウンロードしてきます。利用させていただくのは下記のimageです。こちらのimageはStable diffusionのWebUIフロントエンドの1つとして人気のAUTOMATIC1111の他、InvokeAIやComfyもサポートしています。

まずはgithubからソースをダウンロードしてきます。Download ZIPをクリックすると”stable-diffusion-webui-docker-master.zip”がダウンロードされます

Stabile Diffusion WebUIのセットアップ

Docker imageを解凍

前の手順でダウンロードしてきた”stable-diffusion-webui-docker-master.zip”を解凍します。解凍先はどこでも構いませんが、この手順ではCドライブの直下(=”C:\”)に解凍にします。

初回セットアップ

PowerShellを開いて、解凍したディレクトリに移動します。

 cd c:\stable-diffusion-webui-docker-master

ここからの手順はimageのgit repositoryのWikiに記載された通りの手順となります。

Setup
Easy Docker setup for Stable Diffusion with user-friendly UI - AbdBarho/stable-diffusion-webui-docker

下記のコマンドを実行して初回セットアップを行います

 docker compose --profile download up --build

コマンドを実行すると必要なファイルを自動的にダウンロードしてセットアップを行います。セットアップが正常に終了すると、下記のようにexit code 0で終了します。

[+] Building 2.7s (9/9) FINISHED                                                                         docker:default
 => [download internal] load build definition from Dockerfile                                                      0.0s
 => => transferring dockerfile: 171B                                                                               
・・・(途中省略)・・・
download-1  | https://github.com/invoke-ai/InvokeAI/blob/main/LICENSE
download-1  | And licenses of all UIs, third party libraries, and extensions.
download-1 exited with code 0

起動

下記のコマンドを実行してWebUIフロントエンドのAUTOMATIC1111を起動します。

 docker compose --profile auto up --build

サイズの大きなモデル等のデータを読み込むので起動には多少時間がかかります。起動して準備が整ったら下記のログが出力されます。

Running on local URL:  http://0.0.0.0:7860

ログが出力されたらブラウザで下記のURLにアクセスしてみてください。

http://localhost:7860/

下記の様な画面が表示されれば起動成功です。

画像生成テスト

正しく起動できているかテストしてみます。txt2imgのタブのPositive promptに下記を入れてGenerateボタンを押せば、promptに入力したのに近い画像が生成されます。

今回与えた、「dog, shiba」というpromptに対して、生成された画像が下記です。ちゃんとpromptを反映した柴犬の画像が生成されました。

はちみつ88
はちみつ88

Docker Desktopを使うことで割と簡単に導入できました。

好きな画像をサクッと生成できて面白いですね。ちなみにこのブログで使っている素材もほとんどStable Diffutionで生成しています。

次の投稿ではStable Diffusionをもっと便利に使えるようになる拡張機能のインストールの記事をまとめようと思います。

コメント

タイトルとURLをコピーしました