Initial commit: Spotify to Lidarr frontend with Docker and Unraid script
This commit is contained in:
commit
87a680326e
12 changed files with 996 additions and 0 deletions
89
scripts/run-unraid.sh
Executable file
89
scripts/run-unraid.sh
Executable file
|
|
@ -0,0 +1,89 @@
|
|||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
PROJECT_ROOT="$(cd "${SCRIPT_DIR}/.." && pwd)"
|
||||
|
||||
TEMPLATE_DIR="${TEMPLATE_DIR:-/boot/config/plugins/dockerMan/templates-user}"
|
||||
TEMPLATE_NAME="${TEMPLATE_NAME:-my-lidarr-spotify-frontend.xml}"
|
||||
TEMPLATE_PATH="${TEMPLATE_DIR}/${TEMPLATE_NAME}"
|
||||
|
||||
CONTAINER_NAME="${CONTAINER_NAME:-lidarr-spotify-frontend}"
|
||||
IMAGE_REPO="${IMAGE_REPO:-local/lidarr-spotify-frontend}"
|
||||
IMAGE_TAG="${IMAGE_TAG:-latest}"
|
||||
IMAGE="${IMAGE_REPO}:${IMAGE_TAG}"
|
||||
HOST_PORT="${HOST_PORT:-3000}"
|
||||
|
||||
SPOTIFY_CLIENT_ID="${SPOTIFY_CLIENT_ID:-}"
|
||||
SPOTIFY_CLIENT_SECRET="${SPOTIFY_CLIENT_SECRET:-}"
|
||||
LIDARR_URL="${LIDARR_URL:-http://lidarr:8686}"
|
||||
LIDARR_API_KEY="${LIDARR_API_KEY:-}"
|
||||
LIDARR_ROOT_FOLDER="${LIDARR_ROOT_FOLDER:-/music}"
|
||||
LIDARR_QUALITY_PROFILE_ID="${LIDARR_QUALITY_PROFILE_ID:-1}"
|
||||
LIDARR_METADATA_PROFILE_ID="${LIDARR_METADATA_PROFILE_ID:-1}"
|
||||
|
||||
if ! command -v docker >/dev/null 2>&1; then
|
||||
echo "Fehler: docker wurde nicht gefunden."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "==> Build image ${IMAGE}"
|
||||
docker build -t "${IMAGE}" "${PROJECT_ROOT}"
|
||||
|
||||
mkdir -p "${TEMPLATE_DIR}"
|
||||
|
||||
if [[ -f "${TEMPLATE_PATH}" ]]; then
|
||||
echo "==> Aktualisiere vorhandenes Template: ${TEMPLATE_PATH}"
|
||||
else
|
||||
echo "==> Erstelle neues Template: ${TEMPLATE_PATH}"
|
||||
fi
|
||||
|
||||
cat > "${TEMPLATE_PATH}" <<EOF
|
||||
<?xml version="1.0"?>
|
||||
<Container version="2">
|
||||
<Name>${CONTAINER_NAME}</Name>
|
||||
<Repository>${IMAGE}</Repository>
|
||||
<Registry>https://hub.docker.com/</Registry>
|
||||
<Network>bridge</Network>
|
||||
<MyIP/>
|
||||
<Shell>sh</Shell>
|
||||
<Privileged>false</Privileged>
|
||||
<Support/>
|
||||
<Project>https://github.com/</Project>
|
||||
<Overview>Frontend fuer Spotify Album-Suche und Uebergabe an Lidarr.</Overview>
|
||||
<Category>Downloader:</Category>
|
||||
<WebUI>http://[IP]:[PORT:3000]/</WebUI>
|
||||
<TemplateURL/>
|
||||
<Icon>https://raw.githubusercontent.com/homarr-labs/dashboard-icons/main/svg/lidarr.svg</Icon>
|
||||
<ExtraParams/>
|
||||
<PostArgs/>
|
||||
<CPUset/>
|
||||
<DateInstalled>$(date +%s)</DateInstalled>
|
||||
<DonateText/>
|
||||
<DonateLink/>
|
||||
<Description>Spotify Albumsuche, Track-Auswahl und Uebergabe an Lidarr.</Description>
|
||||
<Networking>
|
||||
<Mode>bridge</Mode>
|
||||
<PublishPorts>true</PublishPorts>
|
||||
</Networking>
|
||||
<Data>
|
||||
<Volume/>
|
||||
<Port/>
|
||||
<Variable/>
|
||||
<Label/>
|
||||
<Config Name="WebUI Port" Target="3000" Default="3000" Mode="tcp" Description="Port fuer das Frontend" Type="Port" Display="always" Required="true" Mask="false">${HOST_PORT}</Config>
|
||||
<Config Name="Spotify Client ID" Target="SPOTIFY_CLIENT_ID" Default="" Mode="" Description="Spotify API Client ID" Type="Variable" Display="always" Required="true" Mask="false">${SPOTIFY_CLIENT_ID}</Config>
|
||||
<Config Name="Spotify Client Secret" Target="SPOTIFY_CLIENT_SECRET" Default="" Mode="" Description="Spotify API Client Secret" Type="Variable" Display="always" Required="true" Mask="true">${SPOTIFY_CLIENT_SECRET}</Config>
|
||||
<Config Name="Lidarr URL" Target="LIDARR_URL" Default="http://lidarr:8686" Mode="" Description="URL deines Lidarr Servers" Type="Variable" Display="always" Required="true" Mask="false">${LIDARR_URL}</Config>
|
||||
<Config Name="Lidarr API Key" Target="LIDARR_API_KEY" Default="" Mode="" Description="Lidarr API Key" Type="Variable" Display="always" Required="true" Mask="true">${LIDARR_API_KEY}</Config>
|
||||
<Config Name="Lidarr Root Folder" Target="LIDARR_ROOT_FOLDER" Default="/music" Mode="" Description="Muss in Lidarr existieren" Type="Variable" Display="always" Required="true" Mask="false">${LIDARR_ROOT_FOLDER}</Config>
|
||||
<Config Name="Lidarr Quality Profile ID" Target="LIDARR_QUALITY_PROFILE_ID" Default="1" Mode="" Description="Quality Profile ID aus Lidarr" Type="Variable" Display="advanced" Required="true" Mask="false">${LIDARR_QUALITY_PROFILE_ID}</Config>
|
||||
<Config Name="Lidarr Metadata Profile ID" Target="LIDARR_METADATA_PROFILE_ID" Default="1" Mode="" Description="Metadata Profile ID aus Lidarr" Type="Variable" Display="advanced" Required="true" Mask="false">${LIDARR_METADATA_PROFILE_ID}</Config>
|
||||
</Data>
|
||||
</Container>
|
||||
EOF
|
||||
|
||||
echo "==> Fertig"
|
||||
echo "Image: ${IMAGE}"
|
||||
echo "Template: ${TEMPLATE_PATH}"
|
||||
echo "Import in Unraid ueber: Docker -> Add Container -> Template -> ${TEMPLATE_NAME}"
|
||||
Loading…
Add table
Add a link
Reference in a new issue