If you prefer video format tutorials this is also available as a youtube video here
Before we get too deep into this guide I just want to clarify what I mean with cloud in this instance as the term can be kind of vague.
The cloud we are talking about here is not Google Drive, Dropbox etc, it is simply a Linux machine that you don’t have to host at home, what I am talking about here is a VPS, aka a Virtual Private Server.
Getting a server
Ok, with that out of the way lets get started.
Since I started Booksonic I have been on the lookout for VPS providers that can give you the amount of storage needed for audiobooks without having to pay hundreds of dollars and let me tell you, they are few and far between.
The one I am currently using and can really recommend is called Contabo. They offer multiple tiers with different hardware but since all of them can handle Booksonic without any problems all we really care about is the storage. You can see the specs below or at this page
Once you have selected the one you want to use click order and you will be taken to a configuration page. Under Operation System check the box for Ubuntu 20.04, leave the rest unchecked and click Order now.
Here comes the hard part, the wait. As far as I can tell they setup your server manually the first time, in my case this has usually taken about 2 hours but it can probably vary. In the meantime go grab a coffee and watch a good movie.
Once the installation is done you will receive and email that contains something like this. This is your server info.
If you are on a Windows computer open up Powershell from the start menu, if you are on Linux or Mac you open up the terminal instead, the commands should be the same.
In Powershell enter the following command, this will give you access to your new Ubuntu server. Replace IPADDRESS with the address from your email.
It will ask you if your trust the fingerprint, answer yes
You will be asked to enter your password, enter the one that is just called password in your email. Something that can be a bit weird for Windows users is that it won’t show you when you type your password but don’t worry just type it anyway and press enter.
The first thing we want to do is change the default password on your box, you do that by typing the command and follow the instructions
Now that the password is changed to something of your own we can get started with preparing the dependencies and folders. The first thing we need is to install something called docker. We do this by typing the following command
apt install docker.io
Next we need to create a few folders where we are going to put our files. We do this by typing
mkdir /booksonic mkdir /booksonic/config mkdir /audiobooks mkdir /podcasts
That’s it, easy huh. Now lets do what you came here for, install Booksonic Air.
docker create --name=booksonic-air -p 80:4040 -v /booksonic/config:/config -v /audiobooks:/audiobooks -v /podcasts:/podcasts --restart unless-stopped linuxserver/booksonic-air
That’s it, now you have installed Booksonic, but you still need to start it. You can start it by running the command
docker start booksonic-air
I won’t be doing a full configuration guide here but there are a few things you need to change in the server to get it working.
Open your browser and in the address field enter the IP address of your server. Sign in with the admin account. Both the username and password is admin.
The first thing you need to do is change your admin password, you can do so from settings -> users
Once you have changed your password you will be signed out and have to sign in again with your new password
Head back to settings, change the folder to /audiobooks
Then hit save
Securing your server
Yeah, I know this is a bit boring but it is really really important, right now your server is not using a firewall, that is a really really bad thing. So lets enable the firewall.
ufw allow 22 ufw allow 80 ufw enable
What did we just do? We just created two rules for ports that should be open and then we enabled the firewall. Port 22 is used by SSH, the tool you are using to control your server, if you had not allowed this you would have lost the connection as soon as the firewall was turned on. Port 80 is the standard port on the web, it is allowed so you can connect to the Booksonic server.
And now at last we are done!
But, how do I upload my audiobooks to the server?
Ah, good question. You do it over sftp, you can use any sftp client you want but if you don’t already have one I can recommend FileZilla.
The Host is the server address, Username is root, Password is the one you set before and Port is 22.
If you are using FileZilla, on the right side, set “Remote site:” to /audiobooks and press enter, then you can drag and drop your audiobook library in the window.
That’s it folks! Should you need any more help or think that something important is missing from the guide, feel free to reach out to me at [email protected], in the comments below or at the Booksonic Subreddit
Obs, if you click the contabo links in this guide and rent a server I will receive a small commission at no extra cost to you, this has not influenced my decision to recommend them in any way, they are what I use personally and what the Booksonic demo is hosted on.