diff --git a/Navidrome/README.md b/Navidrome/README.md
index e69de29..451219e 100644
--- a/Navidrome/README.md
+++ b/Navidrome/README.md
@@ -0,0 +1,6 @@
+# Navidrome
+Navidrome is an open source web-based music collection server and streamer. It gives you freedom to listen to your music collection from any browser or mobile device. It's like your personal Spotify!
+\- [source](https://github.com/navidrome/navidrome)
+
+## Using this kubernetes config
+In `deployment.yml`, set the host path for where you're storing your music files on the host machine. Also set navidrome's hostname in the `ingress.yml` file. This config assumes you have cert-manager installed on your cluster, so if you want to provide HTTPS another way, feel free to comment out the `spec.tls` section (the annotation shouldn't affect anything, but you can comment it out as well if you want)
\ No newline at end of file
diff --git a/Navidrome/deployment.yml b/Navidrome/deployment.yml
new file mode 100644
index 0000000..163ff7c
--- /dev/null
+++ b/Navidrome/deployment.yml
@@ -0,0 +1,47 @@
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ name: navidrome
+spec:
+ selector:
+ matchLabels:
+ app: navidrome
+ template:
+ metadata:
+ labels:
+ app: navidrome
+ spec:
+ containers:
+ - name: navidrome
+ image: deluan/navidrome:latest
+ resources:
+ limits:
+ memory: "128Mi"
+ cpu: "500m"
+ ports:
+ - containerPort: 4533
+ volumeMounts:
+ - name: music
+ mountPath: /music
+ readOnly: true
+ - name: navidrome-config
+ mountPath: /data
+ volumes:
+ - name: music
+ hostPath:
+ path:
+ - name: navidrome-config
+ persistentVolumeClaim:
+ claimName: navidrome-config
+---
+apiVersion: v1
+kind: PersistentVolumeClaim
+metadata:
+ name: navidrome-config
+ namespace: navidrome
+spec:
+ resources:
+ requests:
+ storage: 128Mi
+ accessModes:
+ - ReadWriteOnce
diff --git a/Navidrome/ingress.yml b/Navidrome/ingress.yml
new file mode 100644
index 0000000..32a7d14
--- /dev/null
+++ b/Navidrome/ingress.yml
@@ -0,0 +1,22 @@
+apiVersion: networking.k8s.io/v1
+kind: Ingress
+metadata:
+ name: navidrome
+ annotations:
+ cert-manager.io/cluster-issuer: "letsencrypt-production"
+spec:
+ tls:
+ - hosts:
+ -
+ secretName: navidrome-tls
+ rules:
+ - host:
+ http:
+ paths:
+ - pathType: Prefix
+ path: "/"
+ backend:
+ service:
+ name: navidrome
+ port:
+ number: 80
diff --git a/Navidrome/service.yml b/Navidrome/service.yml
new file mode 100644
index 0000000..d33c9da
--- /dev/null
+++ b/Navidrome/service.yml
@@ -0,0 +1,11 @@
+apiVersion: v1
+kind: Service
+metadata:
+ name: navidrome
+spec:
+ selector:
+ app: navidrome
+ ports:
+ - port: 80
+ targetPort: 4533
+ type: ClusterIP
diff --git a/README.md b/README.md
index 858dbfa..dadb4d0 100644
--- a/README.md
+++ b/README.md
@@ -18,7 +18,7 @@ This is a collection of kubernetes configurations for various services that I ha
- [x] Mealie
- [ ] Minecraft Servers
- [ ] MinIO
-- [ ] Navidrome
+- [x] Navidrome
- [ ] Outline
- [ ] PrivoxyVPN
- [x] Prowlarr