Create a custom Linux-based image

The process for creating a Linux-based image that meets all of the requirements to run in Strigo.

Daniel Wolf avatar
Written by Daniel Wolf
Updated over a week ago

Overview

This article describes the actions to take in order to create an image in general, and in order to make sure it meets the prerequisites for running in Strigo.

The process of creating an image for strigo involves:

  1. Launching an EC2 instance as a base instance, from which an image will be created.

  2. Install all of the software required for your training.

  3. Set some configurations for the image to be accessible to Strigo.

  4. Create an image out of that base instance.

Before you begin

It is advised to create the base instance - and then create the image based on it -already on the region where the lab in Strigo is configured to run.

Configuring the instance

Launch an AWS instance as a base for the eventual AMI

  1. Launch an AWS EC2 instance on your AWS account, based on any Linux AMI as a starting point (whether from the AWS Marketplace, or a private AMI on your account).

  2. For a comprehensive guide on how to launch a Linux instance in AWS, see here.

Connect to the instance

Connect to the instance using an SSH client.

Prepare the instance to your liking

This is where you install all of the software required for training, change all of the settings that are required for the machine to run as you like, and so on.

Note: If you want to run a Linux machine with a desktop interface, please refer to the following guide: http://help.strigo.io/en/articles/4248818-set-up-linux-based-labs-with-a-desktop-interface

Configuration considerations

Overview

The Strigo lab solution enables trainers and students to collaborate on the lab from within the classroom in real-time. To achieve that, Strigo manages SSH sessions to lab machines.

Tmux

Strigo sessions to lab machines are managed with tmux, and the minimum version of tmux recommended by Strigo for a fully supported experience is 2.1. Please notice that some package managers in linux distributions install by default a tmux version lower than 2.1, so an installation of tmux not via a package manager will be required (as described here, for example).

User access

Strigo attempts to establish an SSH connection to a lab machine using the username specified for the Lab Resource in the Class template.

If the username specified there is the default one for the type of the machine (as specified here), Strigo will be able to establish an SSH connection to the machine using a key stored by Strigo, and no additional action is required on your side.

Note: if you wish to specify a username other than the default, you will have to make sure that the Strigo public key is set for that user's SSH configuration.
Please contact Strigo here in order to ask for the public key.
You will then have to add it to the ~/.ssh/authorized_keys of the relevant user.

Creating the image

Create the image

Go back to the EC2 console, stop the instance, and wait for it to be stopped.
Once it has been stopped, you can go on and create an image out of this instance.
You can use this guide for help.

Use the image in Strigo

Please refer to this article in order to use the image in Strigo.

Did this answer your question?