Skip to content

Precourse preparations

UNIX

As is stated in the course prerequisites at the announcement web page. We expect participants to have a basic understanding of working with the command line on UNIX-based systems. You can test your UNIX skills with a quiz here. If you don’t have experience with UNIX command line, or if you’re unsure whether you meet the prerequisites, follow our online UNIX tutorial.

Software

Install Docker on your local computer and create an account on dockerhub. You can find instructions here. Note that you need admin rights to install and use Docker, and if you are installing Docker on Windows, you need a recent Windows version.

If working with Windows

During the course exercises you will be mainly interacting with docker through the command line. Although windows powershell is suitable for that, it is easier to follow the exercises if you have UNIX or ‘UNIX-like’ terminal. You can get this by using MobaXterm or WSL2. Make sure you install the latest versions before installing docker.

If installing Docker is a problem

During the course, we can give only limited support for installation issues. If you do not manage to install Docker before the course, you can still do almost all exercises on Play with Docker. A Docker login is required.

SSH connections

In addition to your local computer, you will be working on an Amazon Web Services (AWS) Elastic Cloud (EC2) server. This Ubuntu server behaves like a ‘normal’ remote server, and can be approached through ssh. If you are enrolled in the course, you have access to a shared document containing instruction to retrieve your username and private ssh key, granting you access to a personal home directory on the server.

Server availability

Please note that, for cost reasons, the server will be started the morning of the course (or the evening before, at the earliest), and will be stopped the day after the course ends, so you will not be able to connect before or after these dates. Likewise, if you need to retrieve data from the server, please do it before it is stopped.

If you want to know more about ssh

If you are not familiar with ssh, you can check the Heidelberg University tutorial for information on how to set it up and use it.

Here are instructions on how to use VScode to connect with SSH to a remote server. First, place the key_username.pem file in the proper folder:

Open a PowerShell terminal, cd to the directory where you have stored your private key (key_username.pem file) and move it to ~\.ssh:

Move-Item -Path key_username.pem -Destination $HOME\.ssh

Open a terminal, cd to the directory where you have stored your private key (key_username.pem file), change the permissions of the key file and move it to ~/.ssh:

chmod 400 key_username.pem
mv key_username.pem ~/.ssh

Then:

  • Open VScode and click on the green or blue button in the bottom left corner
  • Select Connect to Host... and then Configure SSH Hosts...
  • Specify a location for the SSH config file (preferably the same directory as where your keys are stored): ~/.ssh/config
  • A skeleton config file will be provided. Edit it, so it looks like this (replace username with your username, and make sure the IP address in HostName match what the one given in the shared document):

    Host sib_course_remote
        User username
        HostName 18.195.137.58
        IdentityFile ~\.ssh\key_username.pem
    
    Note: if you are working with the Windows SSH executable (for example C:\WINDOWS\System32\OpenSSH\ssh.exe), you may have to use the full path of the key file instead of a relative one in IdentityFile:
        IdentityFile C:\Users\<windows_username>\.ssh\key_username.pem
    

    Host sib_course_remote
        User username
        HostName 18.195.137.58
        IdentityFile ~/.ssh/key_username.pem
    

Finally:

  • Save and close the config file
  • Click again on the green or blue button in the bottom left corner
  • Select Connect to Host..., and then sib_course_remote. You will be asked which operating system is used on the remote. Choose Linux

Video tutorial

You can find a video tutorial to configure SSH connections in VScode below:

If you are not working with VScode

If you are not working with VScode, you can login to the remote server with the following command in a terminal:

ssh -i key_username.pem username@18.195.137.58
If you want to edit files directly on the server, you can mount a directory with sshfs.