62 lines
1.8 KiB
Bash
62 lines
1.8 KiB
Bash
#!/bin/bash
|
|
|
|
set -e
|
|
|
|
echo "########################################"
|
|
|
|
# Run user's set-proxy script
|
|
cd /root
|
|
if [ ! -f "/root/user-scripts/set-proxy.sh" ] ; then
|
|
mkdir -p /root/user-scripts
|
|
cp /runner-scripts/set-proxy.sh.example /root/user-scripts/set-proxy.sh
|
|
else
|
|
echo "[INFO] Running set-proxy script..."
|
|
|
|
chmod +x /root/user-scripts/set-proxy.sh
|
|
source /root/user-scripts/set-proxy.sh
|
|
fi ;
|
|
|
|
# Copy ComfyUI from cache to workdir if it doesn't exist
|
|
cd /root
|
|
if [ ! -f "/root/ComfyUI/main.py" ] ; then
|
|
mkdir -p /root/ComfyUI
|
|
# 'cp --archive': all file timestamps and permissions will be preserved
|
|
# 'cp --update=none': do not overwrite
|
|
if cp --archive --update=none "/default-comfyui-bundle/ComfyUI/." "/root/ComfyUI/" ; then
|
|
echo "[INFO] Setting up ComfyUI..."
|
|
echo "[INFO] Using image-bundled ComfyUI (copied to workdir)."
|
|
else
|
|
echo "[ERROR] Failed to copy ComfyUI bundle to '/root/ComfyUI'" >&2
|
|
exit 1
|
|
fi
|
|
else
|
|
echo "[INFO] Using existing ComfyUI in user storage..."
|
|
fi
|
|
|
|
# Run user's pre-start script
|
|
cd /root
|
|
if [ ! -f "/root/user-scripts/pre-start.sh" ] ; then
|
|
mkdir -p /root/user-scripts
|
|
cp /runner-scripts/pre-start.sh.example /root/user-scripts/pre-start.sh
|
|
else
|
|
echo "[INFO] Running pre-start script..."
|
|
|
|
chmod +x /root/user-scripts/pre-start.sh
|
|
source /root/user-scripts/pre-start.sh
|
|
fi ;
|
|
|
|
echo "[INFO] Starting ComfyUI..."
|
|
echo "########################################"
|
|
|
|
# Let .pyc files be stored in one place
|
|
export PYTHONPYCACHEPREFIX="/root/.cache/pycache"
|
|
# Let PIP install packages to /root/.local
|
|
export PIP_USER=true
|
|
# Add above to PATH
|
|
export PATH="${PATH}:/root/.local/bin"
|
|
# Suppress [WARNING: Running pip as the 'root' user]
|
|
export PIP_ROOT_USER_ACTION=ignore
|
|
|
|
cd /root
|
|
|
|
python3 ./ComfyUI/main.py --listen --port 8188 --enable-manager ${CLI_ARGS}
|