Teaching the Linux command line to students usually requires a machine running Linux, a virtual machine, an SSH client, or a live USB. It's a lot of preparation work you and your students could probably do without.

With Instantbox, you can easily spin up a Linux distro on your host machine and give learners access to the command line through a browser.

Why Create a Linux Distro in a Browser?

Sometimes, you need the command line of a particular Linux system for a short time. You might want to try out a new trick in Arch Linux, for example, or test out the installation procedure for a specific tool on Debian. Or you could be teaching a class on how to master the Linux command line to a room full of Windows users.

In these cases, you might not want to install a bunch of virtual machines or flash the same live USB over and over again.

With Instantbox you can run a single command in your terminal, then visit a local address in your browser to select which distro you want to use.

How to Install Instantbox on Linux

Before you can start using Instantbox, you need to install Docker and Docker Compose.

Make a new directory for Instantbox and move into it:

        mkdir instantbox
cd instantbox

While the developer suggests passing the setup script directly to Bash with the following command, it's never a good idea to execute code from the internet without viewing it first.

        bash <(curl -sSL https://raw.githubusercontent.com/instantbox/instantbox/master/init.sh)
    

Download the setup script from the Instantbox GitHub repository:

        wget https://raw.githubusercontent.com/instantbox/instantbox/master/init.sh
    

Inspect its contents with:

        cat init.sh
    

If everything seems to be in order, run the script with:

        bash init.sh
    

The aforementioned command will check if you have the necessary dependencies installed, then download the Instantbox docker-compose file to your current directory.

The script will ask you what port you want Instantbox to use and your IP address. Both of these questions are optional, and by default, Instantbox will run on port 8888.

If you're already comfortable using Docker Compose, you can download the docker-compose file directly, and skip the installation script.

run instancebox init script
        wget https://raw.githubusercontent.com/instantbox/instantbox/master/docker-compose.yml
    

Now run:

        docker-compose up -d
    

Docker will download the latest Instantbox image and be available on port 8888.

Use Instantbox to Access a Linux Distro in Your Browser

If you're accessing Instantbox from the machine on which it is installed, open a browser, and enter localhost:8888. If accessing from another machine on the same local network, you will need to find the local IP address of the host machine.

instantbox Linux distro selection

When you visit the page, you will need to choose which distro you want to run as well as the most recent version of each named distro. You have a choice of:

  • Ubuntu 14.04, 16.04, 18.04, and 20.04
  • CentOS 6.10, 7, and 8
  • Debian Stretch, Jessie, and Buster
  • Fedora 30 and 31
  • Alpine latest
  • Arch Linux latest

Once you have made your selection, click Next and choose the resources which will be available for the installation. You will be able to select the internal port, the number of CPU cores, available memory, and how long the distro will run. You can set this value as low as one hour, or as high as you like.

Click Create, and Instantbox will download the ISOs for your chosen distro and present you with a root shell in another tab.

From here, you or your students can practice and hone your skills, test out procedures, and install software.

You should use the root shell to create as many regular users as you need, and your students can log in from their own devices.

Your Instantbox session will expire after the time specified in the previous step, or you can click on Purge to instantly trash it and start again.

Become a Master of the Linux Command Line

Instantbox gives you as many command lines as you could possibly want, and doesn't require you to even have the distro installed. You can use it to improve your terminal chops on any type of distro and make sure that you have the learning or teaching resources you need to make the most of this excellent resource.

Did you know you can learn the Linux command line on your own? All you need to know is how to get help for the Linux command you want to master.