I have always loved developing websites using technologies from the Microsoft web stack. The only limitation I ever encountered is the slight restriction on hosting choices when you are ready to go “live”. Don’t get me wrong, IIS is a brilliant platform and I find it really easy to use but I have long wondered if there would ever be a way to one day host on a Linux server. Along came .Net Core which now makes it easy to create an application and deploy it with the required binaries to your hosting platform of choice.
After writing this blog engine in .Net Core, I decided I wanted to host it on my own Linux VPS. At the same time, I also wanted a way to easily be able to make changes to the hosting configuration and to be able to provision email accounts etc. but it also needed to be a simple and lightweight panel that could easily perform tasks I would use regularly. After trying a few options, I finally settled on TinyCP. TinyCP is a lightweight web based hosting control panel for Linux built using PHP and Bootstrap as the front end framework so it displays great on mobile devices. It has support for provisioning websites, email, MySQL databases, ftp accounts , SSL certificates (using Lets Encrypt), version control (using GIT), file sharing (SAMBA), Open VPN and much more. TinyCP is currently free to use although on the website it does mention that licenses will cost $1 per month when it is fully production ready.
If you would like to install TinyCP on your VPS, you can use the following instructions to do so.
1: First SSH on on your VPS (For this tutorial, I am using Ubuntu 18.02 so please check support for your distro on the TinyCP website)
2: Once logged in, you will need to download the installer to a folder of your choice, I chose the “tmp” folder here
# cd /tmp/ # wget http://tinycp.com/download/tinycp-install.sh
3: Next, give the installer the correct permissions and then execute
# chmod +x tinycp-install.sh # ./tinycp-install.sh
4: The install process will reach a point where it asks you to select a port for TinyCP to run on. The default is port 8080
5: The remainder of the install is really quick (on my VPS the entire process took less than 2 minutes) and once it is done you will be presented with the login url, username and a password you can use to login.
URL: http://10.0.0.1:8080 LOGIN: admin PASSWORD: 5HW4RD8D
6: Once logged in, you will be asked to register on the TinyCP website for a licence. Once registered, you will be provided with an ID. Enter this and the email you registered with in the the provided fields and this will activate your panel.
7: Now that TinyCP is installed and activated, you can go to the little box icon in the top right corner and select the “features” menu to install the features you require.
If you get stuck with anything, there is a fairly active community on the TinyCP site where you can ask questions and post issues.
TinyCP Community Link: https://www.tinycp.com/community