Download

Docker Customization

Most docker settings used by MOV.AI Flow™ are written in
usr/share/movai-flow/docker-compose.yml , and can be changed.

❗️

Containers Deleted

Every time a change is made in docker-compose.yml, all container modifications may be lost, such as installed software.

Adding "screen" to a Container

GUI applications, such as text editors, require that screen be launched.

Identify the container (spawner-robot1?) where you want to run these applications.
Then, edit the docker-compose file that launches the containers, typically located at /usr/share/movai-flow/docker-compose.yml.

Add the following lines to the container you need:

    volumes:
      ....
      - /tmp/.X11-unix:/tmp/.X11-unix:rw
      - $XAUTH:$XAUTH
    environment:
      ....
      DISPLAY: "$DISPLAY"
      QT_X11_NO_MITSHM: "1"
      XAUTHORITY: "$XAUTH"

Opening a Container Port

MOV.AI Flow's containers are operating on a virtual private docker network.
Therefore, each container has a unique IP , typically in the range 172.18.0.1-7.
Most ports are blocked and therefore if some ROS node needs to communicate using a given port, you need to open a port at spawner-container-robot1 container (where ROS code runs).

The simplest way is to edit the docker-compose file that launches the containers, typically located at /usr/share/movai-flow/docker-compose.yml.

  1. Find the lines regarding the spawner-robot1 container, namely right after this line image: ${MOVAI_REGISTRY:-pubregistry.aws.cloud.mov.ai}/ce/spawner...
  2. Add a new entry called ports:. Example to open port 2368 for UDP traffic:
ports:
   - "2368:2368/udp"