Files

39 lines
1.4 KiB
Bash
Executable File

#!/usr/bin/env bash
# Rebuild/create specialist containers after a bare-metal restore. GPU workers
# remain stopped; the core installer leaves Athena safely in LLM mode.
set -Eeuo pipefail
log() { printf '\n==> %s\n' "$*"; }
if [[ -r /etc/mike-ai/install.env ]]; then
set -a
# shellcheck disable=SC1091
source /etc/mike-ai/install.env
set +a
fi
export VOICE_GPU_UUID=${VOICE_GPU_UUID:-${IMAGE_GPU_DEVICES:-}}
export ACESTEP_GPU_UUID=${ACESTEP_GPU_UUID:-${IMAGE_GPU_DEVICES:-}}
export SEPARATOR_GPU_UUID=${SEPARATOR_GPU_UUID:-${IMAGE_GPU_DEVICES:-}}
export LTX2_GPU_UUID=${LTX2_GPU_UUID:-${IMAGE_GPU_DEVICES:-}}
create_project() {
local dir=$1 file=${2:-compose.yaml} profile=${3:-}
[[ -f $dir/$file ]] || { printf 'Übersprungen (fehlt): %s/%s\n' "$dir" "$file"; return 0; }
log "Spezialprojekt vorbereiten: $dir"
local args=(docker compose -f "$file")
[[ -z $profile ]] || args+=(--profile "$profile")
(cd "$dir" && "${args[@]}" pull --ignore-buildable && \
"${args[@]}" build && "${args[@]}" create)
}
docker network inspect mike-ai_frontend >/dev/null
create_project /opt/mike-ai/acestep-test compose.yaml music-test
create_project /opt/mike-ai/stem-separator
create_project /opt/mike-ai/omnivoice-studio
create_project /opt/mike-ai/xvc-studio
create_project /opt/mike-ai/stack/experiments/applio-rvc
create_project /opt/mike-ai/Mikes-Applio-UI compose.example.yaml
create_project /opt/mike-ai/ltx2-studio
printf 'ATHENA_SPECIALISTS_REBUILT_OK\n'