From previous tutorial you learned about Backend Server, REST API, Virtual Server & Docker. We will use these tools gradually.

But at first, we need to prepare our environment. That means a physical server. Don’t panic! You don’t have to buy or rent any physical server now! We will create a server in our PC which will run as actual physical server.

Oracle VM VirtualBox will help us to create a physical server of our own. For this we have to download this software first.

Download Oracle VM VirtualBox ( for Windows )

Download Oracle VM VirtualBox ( for Mac )

if the above links doesn’t work then visit their official download page and download for your PC.

You can watch this video for How to download Oracle Virtual-box on Windows? or How to download Oracle Virtual-box on Mac?

After download, install it. Remember, just download and install VirtualBox software, these videos will teach you how to install OS into it. Just skip it or ignore because I will teach you that in this tutorial.

After successful installation, open VirtualBox for the first time. This will look like this below.

Now we have to install our operating system into VirtualBox. We will use Ubuntu 20.04.2.0 LTS as our OS.

Download the ISO file from this link.

This as a very large file, may be 2.7GB+. Wait patiently until it download.

When the OS file downloaded open VirtualBox. Click New

On the next window. Fill the boxes according to me.

Name : Ubuntu 20 Tutorial

Machine Folder: Keep it as it is if you don’t familiar with folder or directory option

Type : Linux

Version : Ubuntu 64 bit

Click Next. This window will ask you to select the amount of memory or RAM. Keep in mind that, this virtual server can run with only 512MB of RAM but speed will be very slow. More RAM means more speed. If you have total of 4GB RAM in your PC, allocate at-least 1GB RAM to this virtual server. Keep in mind that this RAM will be occupied by this virtual machine or server or OS which will may slow down your main OS. But my recommendation is: allow at-least 2GB of RAM for this virtual server / machine / PC.

As I have 16GB RAM in my PC, I am giving 6GB RAM for this virtual server / machine / OS.

Click Next. A new window will appear to chose your HDD type. Just select “Create a virtual hard disk now” option and hit Create button. This will allocate 10GB of storage from your selected drive for it’s own storage.

Select “VDI (Virtual Disk Image)” in the next window.

Keep “Dynamically allocated” option selected on the next window.

In the next window it will ask about storage size. By default it will allocate 10GB for its storage. My recommendation is : allocate at least 20GB for future use of this virtual machine because you may use it later for some interesting projects. Now click Create. This will create a new virtual machine into your PC by VirtualBox.

Select Ubuntu 20 Tutorial > Then click Settings > General > Advanced

Change the settings according below:

Shared Clipboard : Bidirectional

Drag’nDrop: Bidirectional

Now select Storage > Empty > Right click on small CD icon > Choose Virtual Optical Disk Type

Select you downloaded ISO file and press OK

Now select Ubuntu 20 Tutorial again and press Start button. Ubuntu OS will start to install into your virtual machine.

Watch the video below for complete installation of Ubuntu 20 into your VirtualBox.

Now Install Postman into you new Virtual Machine ( Ubuntu 20 Tutorial). Instructions given below.

Install Pycharm CE (Community Edition)

Voalla!!! We prepared our environment to start developing REST API. Cheers!

One Last Thing : I said we will create an actual physical server or machine but I created a virtual server / machine instead.

That’s not confusing to you?

Yes, it is!

If you directly install Ubuntu in your PC as alternative OS your PC would be actual physical server or machine for this purpose. But we installed Ubuntu 20.04 into our windows 10 Operating System with the help of VirtualBox software. The VirtualBox software just created a virtual server inside windows 10 for us. This virtual server will act as our actual physical server as we discussed in previous lesson. We will create more virtual containers inside this virtual server!

Feeling confused again?

Don’t worry! You will understand it slowly, I promise!


Author :

Mahbubur Rahman Turzo

Full Stack Developer

Hi, I am Turzo. As a computer professional I worked for more than 6 years in Backend server development, iOS development, Android development, Game development, Robotics. I will guide you to acquire skills easily, efficiently and perfectly. I hope you will use these skills and knowledge in your real career as well as spread among others!

Leave a Reply

Your email address will not be published. Required fields are marked *