External SSD Setup Guide for Proxmox and Docker¶
Scenario: All the steps involve plugging in a new external storage unit - specifically, a 2 TB SSD you've just unwrapped and plugged in, with no additional setup.
The process involves several steps: making the USB drive usable as an ext4 storage device (with only one partition), mounting it, and then accessing it from within a Docker container, which is in a VM on the Proxmox server to which it is attached. This is the exact way the SSD connected to Proxmox-nuc5 was set up for Navidrome's music.
Part 1: On the Proxmox Host¶
Step 1: Identify the new USB SSD¶
Look for something like /dev/sdX with no mount point and ~2TB size.
Step 2: Partition the disk (single partition, ext4)¶
Step 3: Format the partition¶
Step 4: Create a mount point and mount it¶
Step 5: Make the mount persistent¶
Copy the UUID for /dev/sdX1, then:
Add this line (replace UUID=xxxxx):
Then mount:
Step 6: Create music folder & set permissions¶
sudo mkdir -p /mnt/Ext_New_SSD/music
sudo chown root:root /mnt/Ext_New_SSD/music
sudo chmod 755 /mnt/Ext_New_SSD/music
Step 7: Export via NFS¶
Install NFS server if needed:
Edit exports:
Add:
Apply and restart:
Part 2: On the Ubuntu VM (e.g. navidrome-vm)¶
Step 8: Install NFS client¶
Step 9: Create the mount point¶
Step 10: Mount the share (manual test)¶
Verify:
Step 11: Make it persistent¶
Add:
192.168.1.125:/mnt/Ext_New_SSD/music /mnt/navidrome/music nfs ro,nofail,x-systemd.automount,_netdev 0 0
Mount all to test:
Part 3: Back on the Ubuntu VM – Restart Docker Container¶
Step 12: Ensure docker-compose is pointing to the right music path¶
Update docker-compose.yml:
Then: