Installing Subsonic in your server will allow you to stream your music and video files to any device connected to the Internet such as Android, iPhone, and desktop devices. this is a step by step guide of the official Subsonic installation guide using Debian/Ubuntu found here http://www.subsonic.org/pages/installation.jsp#debian In this tutorial I assume you already have the latest Ubuntu/Debian server already installed, and fully updated.
Note: In order to successfully complete this tutorial you need to have “root” access to the server.
Table of Contents
Set the server with static IP
Make sure your Debian/Ubuntu server is setup with a static IP address. to check that run this command on terminal: sudo nano /etc/network/interfaces and you should get this:
in this case, the server is set to DHCP so it does not have a static IP, we need to change it to static. change the last piece of text from dhcp to static and enter your network information like this:
address 192.168.x.x
netmask 255.255.255.0
gateway 192.168.x.x
dns-nameservers 8.8.8.8 8.8.4.4
Save the config file. and then restart the network service by typing this on terminal: sudo /etc/init.d/networking restart that should update your network configuration file, if it doesn’t, reboot the server: sudo reboot now
Installing Subsonic
subsonic is a Java based server, so it requires Java to be installed. Install Java with this command: sudo apt-get install openjdk-7-jre after java is installed download the the .deb package in your server by typing this command cd /opt/ sudo http://subsonic.org/download/subsonic-5.3.deb at the time of this writing version 5.3 is the latest. check the official website for the current version. Install Subsonic with this command sudo dpkg -i subsonic-5.3.deb the installation should happen very quick:
then go to http://yourseveripaddress:4040 and the welcome screen should come up:
Login with the username “admin” and password “admin” and change the password on the next screen:
If you get this warning in the panel:
Warning! The Subsonic process is running as the root user.
Then specify a different user in this file: sudo nano /etc/default/subsonic
if you need to create a user, create it using these commands:
useradd “username”
passwd “username”
change the Subsonic user to that user now:
restart subsonic: sudo service subsonic restart
that warning should go away now.
Running Subsonic on port 80
Note: you need a domain name in order to complete this step.
You can set Subsonic to run on port 80 within the application itself, but most likely you will need to run other services off this server , and you don’t want Subsonic taking up port 80 on the server. so I recommend setting up apache as reverse proxy to run Subsonic on port 80. to do that you need to install Apache:
sudo apt-get install apache2
type the IP of your server on the browser to make sure Apache is installed:
Good.
Now install the Dev packagage:
sudo aptitude install -y build-essential
now install the modules:
sudo aptitude install -y libapache2-mod-proxy-html libxml2-dev
Some of the modules were probably already installed. restart apache sudo service apache2 restart
Setup a VirtualHost
in order to setup a VirtualHost in Apache, you need to have a valid domain or subdomain. type this command to create the virtualhost file: sudo touch /etc/apache2/sites-available/nameofyourvirtualhost.conf
then open that file in nano sudo touch /etc/apache2/sites-available/nameofyourvirtualhost.conf
copy and paste this to the file. modify it according to your needs:
<VirtualHost *:80>
ServerName subsonic.com
ServerAlias www.subsonic.com
ProxyPass / http://localhost:4040/
ProxyPassReverse / http://localhost:4040/
# ProxyPassReverseCookiePath /ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined</VirtualHost>
enable the VirtualHost with this command:
sudo a2ensite “nameofthevirtualhostfile”
Reload apache: Sudo service apache2 reload
now type the domain URL in your browser, and subsonic should come up:
note: I don’t own the subsonic.com domain. I modified my host file to make subsonic.com to point to my server.
That’s it. that’s how you install subsonic in Ubuntu or Debian server. please leave your comments below.