Skip to content

Add Docker Compose PX4 SITL, ROS 2, Foxglove, DDS, and MAVROS stack#22

Open
cdenihan wants to merge 4 commits into
mainfrom
feature/docker-support
Open

Add Docker Compose PX4 SITL, ROS 2, Foxglove, DDS, and MAVROS stack#22
cdenihan wants to merge 4 commits into
mainfrom
feature/docker-support

Conversation

@cdenihan

@cdenihan cdenihan commented Jun 2, 2026

Copy link
Copy Markdown
Member

Summary

This PR adds a Docker-based runtime for MAVInsight with PX4 SITL, ROS 2 Humble, Foxglove Bridge, Micro XRCE-DDS Agent, and MAVROS.

Changes

  • Adds a ROS 2 Docker image that installs:
    • MAVInsight runtime dependencies
    • px4_msgs
    • foxglove_bridge
    • mavros, mavros_extras, and mavros_msgs
    • Micro XRCE-DDS Agent
  • Adds a PX4 wrapper image and entrypoint so:
    • QGroundControl can connect without Docker binding 14550/udp
    • PX4 uXRCE-DDS connects to the ROS container’s local Micro XRCE-DDS Agent
  • Updates docker-compose.yml to run PX4 and ROS together.
  • Runs these ROS processes concurrently:
    • MicroXRCEAgent udp4 -p 8888
    • ros2 launch mavros px4.launch ...
    • ros2 launch mavinsight launch_all_vehicles_no_tba.launch.py
    • ros2 launch foxglove_bridge foxglove_bridge_launch.xml
  • Makes MAVROS configurable through environment variables:
    • START_MAVROS
    • MAVROS_NAMESPACE
    • MAVROS_FCU_URL

Validation

  • Confirmed Docker Compose config is valid.
  • Confirmed QGroundControl connects after removing the 14550/udp host bind.
  • Confirmed PX4 publishes /fmu/out/... topics through DDS.
  • Built the ROS image successfully with MAVROS and GeographicLib datasets installed.
  • NOTE: All code tested on macOS

@cdenihan cdenihan changed the title Add Docker Support Add Docker Compose PX4 SITL, ROS 2, Foxglove, DDS, and MAVROS stack Jun 2, 2026
@cdenihan cdenihan marked this pull request as ready for review June 2, 2026 01:21
@cdenihan cdenihan requested a review from JoshSchmucki June 2, 2026 01:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant