commit 305f92cff143c0d497d21277145f605d9da830de Author: Kris Lamoureux Date: Mon Jan 26 20:54:45 2026 -0500 Initial Navidrome deployment configuration diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..4c49bd7 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.env diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..a98c8e5 --- /dev/null +++ b/LICENSE @@ -0,0 +1,12 @@ +Copyright (C) 2026 by Kris Lamoureux + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. diff --git a/README.md b/README.md new file mode 100644 index 0000000..000a08f --- /dev/null +++ b/README.md @@ -0,0 +1,28 @@ +# Navidrome Deployment Repository + +This repository contains configuration for deploying a Navidrome container. +Navidrome is a self-hosted music streaming server. + +## Container Configuration + +- `IMAGE`: Specifies the OCI image for Navidrome (default: + `docker.io/deluan/navidrome`). +- `VERSION`: **Required.** Specifies the tag of the Docker image. +- `NAME`: Sets the name of the Docker container (default: `navidrome`). + +## Service Configuration + +- `BASEURL`: **Required.** Base URL where Navidrome is served +- `ENDPOINT`: Host bind address/port mapping for the container (default: + `127.0.0.1:4533`). +- `PORT`: Container listen port (default: `4533`). +- `LOGLEVEL`: Logging verbosity (default: `info`). +- `LASTFM_ENABLED`: Toggle Last.fm integration (default: `true`) +- `LASTFM_APIKEY`: **Required.** Last.fm API key +- `LASTFM_SECRET`: **Required.** Last.fm API secret +- `MUSIC`: **Required.** Path to your music library, mounted read-only + +## License + +This project is released under the **0BSD** license, which allows for +unrestricted use, modification, and distribution. diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..3cf9469 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,19 @@ +volumes: + data: + +services: + navidrome: + image: ${IMAGE:-docker.io/deluan/navidrome}:${VERSION:?} + container_name: ${NAME:-navidrome} + ports: + - ${ENDPOINT:-127.0.0.1:4533}:${PORT:-4533} + environment: + ND_PORT: ${PORT:-4533} + ND_LOGLEVEL: ${LOGLEVEL:-info} + ND_BASEURL: ${BASEURL:?} + ND_LASTFM_ENABLED: ${LASTFM_ENABLED:-true} + ND_LASTFM_APIKEY: ${LASTFM_APIKEY:?} + ND_LASTFM_SECRET: ${LASTFM_SECRET:?} + volumes: + - data:/data + - ${MUSIC:?}:/music:ro,Z