Skip to content

Before arriving at the venue

Ugo Pattacini edited this page Jun 12, 2021 · 44 revisions

Create your GitHub account

  • If you're not a GitHubber yet, please sign up for GitHub :octocat: (it's free). We're going to use GitHub and GitHub Education during the course for hosting code and material so as collaborating all together ✨
  • Thus, provide a complete profile πŸ‘€ detailing your:
    • Name
    • Surname
    • Email (can be kept hidden)
    • Picture (not mandatory, but we appreciate it πŸ˜‰)
    • Bio (again not mandatory, but appreciated)

⚠️ Make sure the email you provide is active: GitHub will send you notifications πŸ””. All this info will help us find you on GitHub even if your fancy username won't give enough hints πŸ˜„.

Join our Course

Once you have a GitHub account, ask us to join the team opening a ticket πŸ“ at our Q&A system.

Prepare your system

Official guidelines for installing the software on different platforms can be browsed on our online 🌐 manual.

⚠ However, we warmly recommend that you proceed with installing the docker image we provide for the training (see below).

This is methodologically relevant as we aim to maximize the effectiveness of training hours by focusing on the content of the course rather than spending time troubleshooting installation snags that may arise along the way.

🐳 Instructions to run the Docker container locally

To run the docker container, go through the following steps:

  1. Make sure that you have installed Docker correctly for your platform.
  2. Pull the docker image:
    docker pull ghcr.io/vvv-school/gitpod:latest
  3. Launch the container:
    docker run -it -p 6080:6080 --user gitpod --name <container_name> ghcr.io/vvv-school/gitpod:latest
    where container_name is an optional id that the user can specify to ease the later identification of the container.
  4. From within the container shell, launch the following scripts:
    init-icubcontrib-local.sh
    start-vnc-session-local.sh
  5. Open up the browser on your host and connect to localhost:6080 to get to the workspace desktop GUI.
    You should get the outcome below πŸŽ‰

βš™ Stop the container

Once done with the container, you can stop it in two different ways:

  • Log out from the container shell by pressing CTRL+D.
  • Stop the container:
    docker stop <container_name>

βš™ Restart the container

docker start <container_name>
docker attach <container_name>

βš™ Remove a stopped container

docker container rm <container_name>

βš™ List containers

docker container ls -a

βš™ Trim the docker image

To permanently apply to a new image the changes you made to the container, you need to:

  1. Stop the container.
  2. Commit the changes to a new image:
    docker commit <container_name> <image_name>

βš™ Clean up all resources

docker system prune -a

πŸ”¨ Troubleshooting docker

  • Stick to standard terminals (opened via docker attach <container_name> or via the terminal in VNC) when launching docker commands. We spotted problems when dealing with terminals opened up from within the Docker GUI in Windows.
  • If the graphical interface of the container stops somehow working, just start it over by launching again the following command:
    start-vnc-session.sh

βœ” Check your installation

Test whether the following tutorial runs as expected.

  1. From the docker desktop GUI, open up a shell.
  2. Within the shell terminal, type in the following:
    git clone https://github.com/vvv-school/tutorial_cartesian-interface.git
    cd tutorial_cartesian-interface/smoke-test
    ./test.sh
    ⚠ Copy-paste does not work from the host to the docker desktop GUI. To get around this, simply browse this web page from within the docker desktop straight away: this time, copy-paste will work!
You should get the outcome below πŸŽ‰

☁ Instructions to run the Docker container on the web

You may consider relying on the Gitpod Cloud IDE as infrastructure to run the docker image on the cloud:

Problems?

πŸ€” Should you experience any problem, don't hesitate to contact us by posting to our πŸ‘‹ Q&A system.

Gear up

In view of attending the course, there might be still some time you want to exploit to gear up, especially if you feel you can improve your pace by taking some refresher training.

A.O.B.

  • How to trim (survive) GitHub notifications πŸ””. Disabling them all is not an option 😏. In short, you can subscribe/unsubscribe to conversations in multiple ways, the most relevant being per repository or per issue.
  • Community