1. 왜 항상 환경 설정이 제일 힘들까?
수많은 개발자가 "의존성 지옥(Dependency Hell)"을 경험합니다.
특히 최신 버전인 Isaac Sim 5.1.0과 가장 대중적인 ROS 2 Humble을 한 컴퓨터에 설치하려다 보면 필연적으로 문제가 발생합니다.
복잡한 설정을 Dockerfile로 자동화(Baking)한 프로젝트를 공유합니다.
https://github.com/hms-gymnopedie/IsaacSim_Setting
GitHub - hms-gymnopedie/IsaacSim_Setting: Isaac Sim Setting Dockerfile
Isaac Sim Setting Dockerfile. Contribute to hms-gymnopedie/IsaacSim_Setting development by creating an account on GitHub.
github.com
2. 아키텍처 : 따로 또 같이 (Separate Containers)
3. 주요 기능 및 해결한 문제들
A. Isaac Sim + Pegasus 컨테이너
• Headless 지원: GUI가 없는 서버 환경에서도 렌더링이 가능하도록 nvidia_icd.json 및 Vulkan 설정을 최적화했습니다.
• Pegasus & PX4 자동 설치: 드론 시뮬레이션을 위한 Pegasus 시뮬레이터와 PX4 Autopilot 빌드 과정을 Dockerfile에 포함시켜, 빌드 한 번으로 모든 준비가 끝납니다.
B. ROS 2 "Baked" 이미지 (All-in-One)
ROS 2 컨테이너는 실행할 때마다 git clone하고 빌드할 필요가 없습니다. 소위 "구워진(Baked)" 이미지입니다.
1. 자동 의존성 설치: rosdep이 vision_msgs, ackermann_msgs 등 필수 패키지를 자동으로 설치합니다.
2. Fast DDS 설정 내장: Docker 환경 통신 문제의 주원인인 DDS 설정을 위해 fastdds.xml(UDP 강제 모드)을 생성하고 환경 변수까지 자동으로 등록합니다.
3. 빌드 완료 상태: 컨테이너를 켜자마자 source install/local_setup.bash가 적용되어 바로 개발을 시작할 수 있습니다.
4. 설치 및 실행 가이드
git clone https://github.com/hms-gymnopedie/IsaacSim_Setting.git
cd IsaacSim_Setting
# 빌드
cd IsaacSim_Pegasus
docker build -t isaacsim-pegasus .
# 실행 (GPU 사용 및 호스트 네트워크 공유)
docker run -it --rm --gpus all --net=host --name isaacsim_container isaacsim-pegasus
# 빌드
cd ../ROS2_Humble
docker build -t ros2-humble .
# 실행 (별도의 마운트 설정 불필요!)
docker run -it --rm --net=host --name ros2_container ros2-humble
5. 마무리하며
#IsaacSim #ROS2 #Docker #Robotics #PegasusSimulator #NVIDIA #Simulation
• Repository: https://github.com/hms-gymnopedie/IsaacSim_Setting
'🤖 Robotics, 로봇 > 개요' 카테고리의 다른 글
| [공유] 자율주행을 위한 3D Reconstruction 기술, 한눈에 정리했습니다 (0) | 2026.02.21 |
|---|---|
| 논문, 제발 처음부터 읽지 마라: 실행 중심의 3단계 학습 파이프라인 (0) | 2026.02.21 |
| [개발환경] Isaac Sim & PX4 & QGroundControl 환경구축 (0) | 2026.01.27 |
| [개발환경] 드론 개발을 위한 시뮬레이션 환경 구축 가이드(ft. Docker, Isaac Sim, Pegasus) (1) | 2026.01.27 |
| [오픈소스] 최근 5년 AI & 로보틱스 기술 트렌드 분석: arXiv 데이터 시각화 대시보드 (0) | 2025.12.19 |