Add one-command Unraid start script with template auto-open
This commit is contained in:
parent
87a680326e
commit
fe3601cb5b
2 changed files with 92 additions and 3 deletions
40
README.md
40
README.md
|
|
@ -36,12 +36,39 @@ Danach erreichbar unter: [http://localhost:3000](http://localhost:3000)
|
||||||
|
|
||||||
## Unraid: Build + Template automatisch aktualisieren/anlegen
|
## Unraid: Build + Template automatisch aktualisieren/anlegen
|
||||||
|
|
||||||
|
Einmalig:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
chmod +x scripts/run-unraid.sh
|
chmod +x start.sh scripts/run-unraid.sh
|
||||||
./scripts/run-unraid.sh
|
|
||||||
```
|
```
|
||||||
|
|
||||||
Optional mit eigenen Werten:
|
Danach reicht:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
./start.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
`start.sh` macht:
|
||||||
|
|
||||||
|
- optional `git pull --ff-only` (deaktivierbar mit `SKIP_GIT_PULL=1`)
|
||||||
|
- Build vom Docker-Image
|
||||||
|
- Unraid-Template automatisch erstellen/aktualisieren
|
||||||
|
- direkten Sprung zur Unraid Template-Seite: `Docker/AddContainer?xmlTemplate=user/...`
|
||||||
|
|
||||||
|
Optional kannst du Werte in `.env.unraid` (oder `.env`) ablegen, z. B.:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
SPOTIFY_CLIENT_ID=xxx
|
||||||
|
SPOTIFY_CLIENT_SECRET=yyy
|
||||||
|
LIDARR_URL=http://192.168.1.50:8686
|
||||||
|
LIDARR_API_KEY=zzz
|
||||||
|
LIDARR_ROOT_FOLDER=/music
|
||||||
|
IMAGE_REPO=ghcr.io/dein-user/lidarr-spotify-frontend
|
||||||
|
IMAGE_TAG=latest
|
||||||
|
UNRAID_URL=http://tower
|
||||||
|
```
|
||||||
|
|
||||||
|
Alternativ direkt per Umgebungsvariablen:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
SPOTIFY_CLIENT_ID=xxx \
|
SPOTIFY_CLIENT_ID=xxx \
|
||||||
|
|
@ -51,6 +78,13 @@ LIDARR_API_KEY=zzz \
|
||||||
LIDARR_ROOT_FOLDER=/music \
|
LIDARR_ROOT_FOLDER=/music \
|
||||||
IMAGE_REPO=ghcr.io/dein-user/lidarr-spotify-frontend \
|
IMAGE_REPO=ghcr.io/dein-user/lidarr-spotify-frontend \
|
||||||
IMAGE_TAG=latest \
|
IMAGE_TAG=latest \
|
||||||
|
UNRAID_URL=http://tower \
|
||||||
|
./start.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
Direkt `run-unraid.sh` ausführen (ohne Auto-Open/ohne git pull):
|
||||||
|
|
||||||
|
```bash
|
||||||
./scripts/run-unraid.sh
|
./scripts/run-unraid.sh
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
|
||||||
55
start.sh
Executable file
55
start.sh
Executable file
|
|
@ -0,0 +1,55 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
set -euo pipefail
|
||||||
|
|
||||||
|
PROJECT_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||||
|
RUN_SCRIPT="${PROJECT_ROOT}/scripts/run-unraid.sh"
|
||||||
|
|
||||||
|
if [[ ! -x "${RUN_SCRIPT}" ]]; then
|
||||||
|
chmod +x "${RUN_SCRIPT}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ "${SKIP_GIT_PULL:-0}" != "1" ]] && command -v git >/dev/null 2>&1; then
|
||||||
|
if git -C "${PROJECT_ROOT}" rev-parse --is-inside-work-tree >/dev/null 2>&1; then
|
||||||
|
echo "==> Aktualisiere Git-Stand (git pull --ff-only)"
|
||||||
|
git -C "${PROJECT_ROOT}" pull --ff-only || echo "Hinweis: git pull fehlgeschlagen, fahre mit lokalem Stand fort."
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
for env_file in "${PROJECT_ROOT}/.env.unraid" "${PROJECT_ROOT}/.env"; do
|
||||||
|
if [[ -f "${env_file}" ]]; then
|
||||||
|
echo "==> Lade Umgebungswerte aus ${env_file}"
|
||||||
|
# shellcheck disable=SC1090
|
||||||
|
set -a; source "${env_file}"; set +a
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
"${RUN_SCRIPT}"
|
||||||
|
|
||||||
|
TEMPLATE_NAME="${TEMPLATE_NAME:-my-lidarr-spotify-frontend.xml}"
|
||||||
|
UNRAID_URL="${UNRAID_URL:-}"
|
||||||
|
|
||||||
|
if [[ -z "${UNRAID_URL}" ]]; then
|
||||||
|
if command -v hostname >/dev/null 2>&1; then
|
||||||
|
HOST_IP="$(hostname -I 2>/dev/null | awk '{print $1}')"
|
||||||
|
if [[ -n "${HOST_IP}" ]]; then
|
||||||
|
UNRAID_URL="http://${HOST_IP}"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ -z "${UNRAID_URL}" ]]; then
|
||||||
|
UNRAID_URL="http://tower"
|
||||||
|
fi
|
||||||
|
|
||||||
|
UNRAID_URL="${UNRAID_URL%/}"
|
||||||
|
TARGET_URL="${UNRAID_URL}/Docker/AddContainer?xmlTemplate=user/${TEMPLATE_NAME}"
|
||||||
|
|
||||||
|
echo "==> Template direkt aufrufen:"
|
||||||
|
echo "${TARGET_URL}"
|
||||||
|
|
||||||
|
if command -v xdg-open >/dev/null 2>&1; then
|
||||||
|
xdg-open "${TARGET_URL}" >/dev/null 2>&1 || true
|
||||||
|
elif command -v open >/dev/null 2>&1; then
|
||||||
|
open "${TARGET_URL}" >/dev/null 2>&1 || true
|
||||||
|
fi
|
||||||
Loading…
Add table
Add a link
Reference in a new issue