🔖

Stable Diffusion WebUI のWindows 10に同じローカルネットワーク上のPCやスマホからアクセスできるようにする

2022/10/28に公開

Windows 10にインストールして立ち上げた Stable Diffusion WebUI を同じローカルネットワーク上のPC(Macやスマホなど)からアクセスできるようにした設定のメモです。

Stable Diffusion WebUIで立ち上がったWebサーバーは完全に内部でしかアクセスできないようで、いくらファイアウォールやポートの設定を試してもダメでした。
最終的にポートフォワーディングしかないのかと思っていましたが、batファイルを一つ作成するだけですぐできました。

こちらの記事が大変参考になりました。
きらりこねっと | Stable Diffusion Web UI(AUTOMATIC1111版)を導入したのとWaifu DiffusionやTrinArtのモデルを使ってみたのと【AI画像生成】
本当に助かりました、ありがとうございます。

ポート開放とかファイアウォールの設定とか補足的に書いていきます。

手順

  • .batを新規作成
  • 7860番ポートを開放

①.batを新規作成

webui.bat と同じディレクトリに.batを新規作成します
中身は以下の三行をコピペしてください。

@echo off
set COMMANDLINE_ARGS=--listen
call webui.bat

私は webui-server.bat と保存しました。

7860番ポートを開けている人はwebui-server.bat から起動してみてください。

余談)
きらりこねっと さんの記事には、Github上に上記のやり方が記述されてた、と書いてあるんですが私は見つけることができませんでした…

webui-server.bat を起動

venv "C:\user\stable-diffusion-webui\venv\Scripts\Python.exe"
Python 3.10.8 (tags/v3.10.8:aaaf517, Oct 11 2022, 16:50:30) [MSC v.1933 64 bit (AMD64)]
Commit hash: 604620a7f08d1126a8689f9f4bec8ade0801a69b
Installing requirements for Web UI
Launching Web UI with arguments: --listen
LatentDiffusion: Running in eps-prediction mode
DiffusionWrapper has 859.52 M params.
making attention of type 'vanilla' with 512 in_channels
Working with z of shape (1, 4, 32, 32) = 4096 dimensions.
making attention of type 'vanilla' with 512 in_channels
Loading weights [e1de58a9] from C:\AI\stable-diffusion-webui\models\Stable-diffusion\model.ckpt
Global Step: 683410
Applying cross attention optimization (Doggettx).
Model loaded.
Loaded a total of 0 textual inversion embeddings.
Embeddings:
Running on local URL:  http://0.0.0.0:7860

127.0.0.1:7860 だった箇所が 0.0.0.0:7860 に変更されました
(なお 127.0.0.1:7860 でも変わらずアクセスできます)

②7860番ポートを開放

ローカルネットワーク上でアクセスできるように、ファイアウォールで7860b版ポートを空ける設定を行います

[設定>ネットワークとインターネット>Windows ファイアウォール]を開く

[詳細設定]を開く

アラートが出るので[はい]

画面[セキュリティが強化されたWindows Defender ファイアウォール] 
で[受信の規則]>[新しい規則…]をクリック

画面にしたがって7860ポートを設定します

規則の種類:ポート

TCPを選択して特定のローカルポートに[7860]を入力

操作:接続を許可する

プロファイル:プライベート
ドメインやパブリックはセキュリティ上危険なのでプライベートだけにしておきましょう。

名前:後でわかる名前と説明を入れておきましょう。
私は[Stable Diffusion WebUI]としてます。

入力後、受信の規則一覧に表示されていたら完了です。
利用しない時は右クリックの[規則の無効化]にすればポートを閉じます。

他のデバイスからアクセス

稼働WindowsのIPアドレスを調べておきます。
https://cs.zaq.ne.jp/JSS_KnowledgeDetail?an=000003045

IPアドレスがわかったら後ろにポート番号:7860 を加えてアクセスします。
例) http://192.168.1.2:7860/

稼働Windows上からアクセスできれば成功です。
アクセス成功したブラウザ画面

7860番ポートが開いていれば、同一LAN上のデバイスからもこのURLで、Windows上のStable Diffusion WebUIにアクセスできます。

これで寝る前に手持ちのスマホで思いついたPromptで生成させることもできるようになったわけです。

IPアドレスはDHCPサーバー(ルーター)の再起動などで変わることもあるので、よく使う人はIPアドレスを手動で固定にしてくといいです。
https://www.aterm.jp/support/qa/qa_external/00244/win10.html

Discussion