2025年10月2日木曜日

StableDiffusionWebUI を launchctl で管理する

StableDiffusionWebUI を launchctl で管理する

概要

plist を作成し launchctl に登録すると管理が楽になります

環境

  • macOS 15.7

local.mac.sdwebui.plist

今回の設定は Mac 起動時に自動で SD-WebUI も起動する設定です
停止した場合に自動で再起動したい場合は KeepAlive=true を設定します

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
  <dict>
    <key>Label</key>
    <string>local.mac.sdwebui</string>
  
    <key>ProgramArguments</key>
    <array>
      <string>/bin/bash</string>
      <string>/Users/user01/Documents/work/stable-diffusion-webui-forge/webui.sh</string>
      <string>--force-upcast-attention</string>
      <string>--listen</string>
      <string>--api</string>
    </array>
  
    <key>WorkingDirectory</key>
    <string>/Users/user01/Documents/work/stable-diffusion-webui-forge</string>
  
    <key>StandardOutPath</key>
    <string>/tmp/sdwebui.log</string>
    <key>StandardErrorPath</key>
    <string>/tmp/sdwebui.err</string>

    <key>RunAtLoad</key>
    <true/>
  </dict>
</plist>
  • cp local.mac.sdwebui.plist ~/Library/LaunchAgents/
  • launchctl load ~/Library/LaunchAgents/local.mac.sdwebui.plist

起動停止

  • launchctl start local.mac.sdwebui
  • launchctl stop local.mac.sdwebui

最後に

ターミナルを立ち上げてフォアグラウンドでプロセス管理すると辛い場合には素直に launchctl 化しましょう

0 件のコメント:

コメントを投稿