Home built blob storage server
In the hopes of creating a "blob" like storage like Amazon S3, I recently did a Google for open source blob storage. To my pleasure, I discovered minio. Minio allows me to expose an S3 compatible service locally on my home network. I can now work with large datasets in a S3-like fashion locally without having the overhead of dealing with an Internet connection.
I also am able to set up the AWS CLI to interact with minio or have the minio client interact with AWS S3.
While redundancy can be implemented with minio, I'll save that as a project for later.
I picked up a Raspberry Pi 4 8 GB model from Amazon ($150) and a 8 TB external USB drive from Costco ($120). One can always step down to a lower model / storage space if needed - just couldn't resist the savings on an 8 TB drive from Costco. :)
I downloaded the Raspbian Lite image, set up regionalization and my hostname. Attached the USB drive and created a brand new ext3 partition on the USB drive, wiping out everything else. Formatted and attached the drive and made sure it came up on reboots.
Then I downloaded minio using the wget process.
sudo ln -s /home/pi/minio /usr/bin/minio
sudo ln -s /home/pi/mc /usr/bin/mc
Then I made a simple shell script (start.sh) to launch minio.
/usr/bin/minio server /mnt/data
Then I made a file
Inside the file I put the following:
Description=Minio Storage Service
I then verified the service worked as intended:
$ sudo systemctl start minio
$ sudo systemctl status minio
Opened my browser, and once I logged in, I was able to access the minio service via browser and I made an alias for my minio client.