Geoff Ballinger / Head of Platform
Docker Swarm for Embedded Environments
Future transport will be highly automated and coordinated.
Knowing the position of each vehicle will be critical.
The ground has measureable structure that is unique to a location
Fast Forward a few years …
Initial trials gave 2cm accuracy at 100km/h
GPS
RailLoc
RailLoc Engine
RailLoc Sensor
RailLoc Map
Server
GPS
Track ID, Position
& Velocity
Offline GPS
Correction
Software
Challenges
• very limited physical access
• semi-air gapped system
• multi architecture – x86_64 + aarch64
• R&D deployment where things will change often!
Docker & Swarm gives us …
• simple/vanilla local install of OS + docker-ce
• managed as a single resource
• converges to the defined / versioned configuration
• run local registry service for container images
• sneaker-net updates via my laptop’s image cache and a new
docker-compose.yaml
Rough Edges
• docker support in L4T kernel is fragile
• NVIDIA L4T seems to break overlay networks
• some ROS nodes will need to run CUDA code …
Geoff Ballinger / Head of Platform
Thanks for listening!
(We are hiring for CUDA developers now, software
engineers soon, and many other technical roles
over the next year!)

Docker in Embedded Systems

  • 1.
    Geoff Ballinger /Head of Platform Docker Swarm for Embedded Environments
  • 2.
    Future transport willbe highly automated and coordinated. Knowing the position of each vehicle will be critical.
  • 3.
    The ground hasmeasureable structure that is unique to a location
  • 4.
    Fast Forward afew years …
  • 5.
    Initial trials gave2cm accuracy at 100km/h GPS
  • 6.
    RailLoc RailLoc Engine RailLoc Sensor RailLocMap Server GPS Track ID, Position & Velocity Offline GPS Correction
  • 7.
  • 8.
    Challenges • very limitedphysical access • semi-air gapped system • multi architecture – x86_64 + aarch64 • R&D deployment where things will change often!
  • 9.
    Docker & Swarmgives us … • simple/vanilla local install of OS + docker-ce • managed as a single resource • converges to the defined / versioned configuration • run local registry service for container images • sneaker-net updates via my laptop’s image cache and a new docker-compose.yaml
  • 10.
    Rough Edges • dockersupport in L4T kernel is fragile • NVIDIA L4T seems to break overlay networks • some ROS nodes will need to run CUDA code …
  • 11.
    Geoff Ballinger /Head of Platform Thanks for listening! (We are hiring for CUDA developers now, software engineers soon, and many other technical roles over the next year!)

Editor's Notes

  • #2 Joined at the start of the year Precise and trusted location of vehicles Long interested in IOT – this is the Internet Of very big Things
  • #3 The big picture
  • #4 Founder Anthony fell into the canal …
  • #5 Trains, cars, and factory/warehouse robots … This presentation focused on Network Rail New Measurement Train
  • #6 This is real data ...
  • #7 Lots more vanilla use of containers on the cloud side later
  • #9 physical access every two weeks train WIFI style access when powered up intel in the train, arm in the sensor
  • #10 complexity is in the containers declarative deployment powerup or other disruption registry local and visible to all swarm members
  • #11 L4T is derived from Ubuntu 16.04 (/ 18.04) Carrier board specific mods have been known to break docker support Access to CUDA/GPGPU driver from inside the container – or run it in a container?