這是一個基於 Docker 的 ROS(Robot Operating System)開發環境,專為機器人開發者設計。本專案整合了 ROS Noetic、Ubuntu 20.04 和完整的桌面環境,提供了一個即用型的開發平台。主要特點包括:
- 🐳 基於 Docker 的容器化環境,確保開發環境的一致性和可移植性
- 🖥️ 整合 VNC/noVNC 服務,支援圖形化介面操作
- 🔧 預裝完整的 ROS 開發工具和 Hiwin 機器人相關依賴套件
- 🛠️ 支援 VSCode 遠端開發
- 🔄 使用 Docker Compose 進行容器管理
git clone https://github.com/Avery320/ROS_docker_GUI.git參考:Docker Build
在 docker_compose/sample/ 中以設置 .devcontariner 允許開發者可以透過 VSCode 的 reopen to container 的方式進入容器。
cd docker_compose/sample/
code .- VNC客戶端:localhost:5901 (密碼:ros000)
- 瀏覽器:http://localhost:8080/vnc.html
這是一個基於 Ubuntu 20.04 的桌面環境映像檔,提供完整的圖形化介面支援:
ubuntu-mate-desktop- Ubuntu MATE 桌面環境tigervnc-standalone-server- VNC 伺服器noVNC- 網頁版 VNC 客戶端supervisor- 進程管理工具
vscodium- 開源版 VS Codebuild-essential- 編譯工具vim,git,sudo- 基本工具python3-pip- Python 套件管理tini,gosu- 容器管理工具wget,curl- 網路工具terminator- 終端機
基於 ros_desktop_base 的 ROS 開發環境映像檔,提供完整的 ROS 開發工具:
ros-noetic-desktop- ROS 桌面版本,包含基本開發工具python3-ros*- ROS 開發工具集(安裝、依賴管理、工作空間工具等)rosdep- ROS 套件依賴管理工具
ros-noetic-gazebo-ros-pkgs- Gazebo ROS 整合套件ros-noetic-gazebo-ros-control- Gazebo 控制介面ros-noetic-gazebo-plugins- Gazebo 插件集ros-noetic-gazebo-msgs- Gazebo 訊息定義ros-noetic-gazebo-dev- Gazebo 開發工具ros-noetic-gazebo-ros- Gazebo ROS 介面
- 容器內已預先配置好ROS工作空間,會將
workspace資料夾中的內容映射至容器中/home/ROS/workspace/。 - 目前添加作者所需的開發腳本 Hiwin robot dependencies 於
workspace/dev_setup/hiwin_robot_setup。 您可以添加自己的ROS包於/home/ROS/workspace/。
本專案採用 GNU General Public License v3.0 授權條款。詳情請參閱 LICENSE 檔案。