Skip to content

Devcontainer

Overview

Devcontainer is a recommended way to setup development environment for this project. It is a Docker container with all the required tools and dependencies.

With a seamless integration with VSCode, it provides a consistent development environment for all developers.

For CLion users there is an alternative approach described in CLion development environment.

Prerequisites

Getting Started with VSCode

  1. Open repository in VSCode.
  2. Reopen in Container. (VSCode should ask for it automatically, but if not, you can do it manually)
    • Click on the green icon in the bottom left corner of the VSCode window.
    • Select Reopen in Container.
    • Wait for the container to build.
    • VSCode will reopen in the container.
  3. Enjoy your development environment.

Detailed

Devcontainer comes up with some containers configured with Docker Compose:

  • workspace - main container with all the tools and dependencies and mounted workspace
  • xserver - container with X server and VNC server for GUI applications
  • groot - container with groot, a GUI for BehaviourTree.CPP. It does not start by default. See GRoot for more details.

All containers share the same X server socket, so GUI applications can be run from the workspace container and displayed in the xserver container. VNC server in xserver runs a web server on port 12345 with a VNC client. You can access it by opening http://localhost:12345 in your browser.