welcom ! Handel home

2025年4月15日 星期二

官方支援的 ROS 2 Humble Docker 映像

  ✅ 官方支援的 ROS 2 Humble Docker 映像

bash
osrf/ros:humble-desktop-full

📦 可用的 ROS 2 Humble 變體(tag)

映像名稱說明
osrf/ros:humble基礎環境 (類似 ros-base)
osrf/ros:humble-desktop含 RViz, 少量模擬支援
osrf/ros:humble-desktop-full完整功能,含 Gazebo、MoveIt 等 GUI 工具

🐳 使用方式

啟動 container:

bash
docker run -it osrf/ros:humble-desktop-full

若要支援圖形介面(如 Gazebo / RViz):

bash
xhost +local:root docker run -it \ --env="DISPLAY" \ --env="QT_X11_NO_MITSHM=1" \ --volume="/tmp/.X11-unix:/tmp/.X11-unix:rw" \ osrf/ros:humble-desktop-full

✅ 建議 Dockerfile 範例(自定 ROS 2 開發環境)

Dockerfile
FROM osrf/ros:humble-desktop-full # 安裝依賴 RUN apt update && apt install -y \ python3-pip \ python3-colcon-common-extensions \ git \ build-essential \ ros-humble-rmw-fastrtps-cpp # 建立工作目錄 WORKDIR /root/ros2_ws RUN mkdir -p src # 初始化 ROS 環境 RUN echo "source /opt/ros/humble/setup.bash" >> ~/.bashrc

📌 小提醒

  • humble 支援 Ubuntu 22.04,請確認本機 X11 支援與容器一致。

  • 若需 micro-ROS agent、MoveIt2、Gazebo 等,可額外 apt install



需要我幫你產生一個 含 micro-ROS、MoveIt2 與 Gazebo 支援的 Dockerfile 嗎?

可直接延伸開發機器人平台。




# ROS 2 Humble 開發環境 Dockerfile

# 含 micro-ROS Agent、MoveIt2、Gazebo 支援

#Ros2 Humble Dev Dockerfile

====================================

FROM osrf/ros:humble-desktop-full

# 基本環境準備

ENV DEBIAN_FRONTEND=noninteractive


RUN apt update && apt upgrade -y && \

    apt install -y \

    build-essential \

    python3-pip \

    python3-colcon-common-extensions \

    git curl wget lsb-release gnupg2 \

    nano tmux net-tools iputils-ping \

    ros-humble-rmw-fastrtps-cpp \

    ros-humble-micro-ros-agent \

    ros-humble-moveit \

    ros-humble-moveit-setup-assistant \

    ros-humble-gazebo-ros-pkgs \

    ros-humble-gazebo-ros-control \

    ros-humble-ros2-control \

    ros-humble-ros2-controllers \

    && rm -rf /var/lib/apt/lists/*


====================================

# 建立 ROS 2 工作目錄

ENV ROS_WS=/root/ros2_ws

RUN mkdir -p $ROS_WS/src

WORKDIR $ROS_WS


====================================

# 初始化 ROS 2 環境

RUN echo "source /opt/ros/humble/setup.bash" >> ~/.bashrc

RUN echo "source /root/ros2_ws/install/setup.bash" >> ~/.bashrc


====================================

# 預設啟動指令

CMD ["bash"]


沒有留言: