[Mac OS] Mac M1에서 Ubuntu 18.04를 설치해보자!

백채윤·2024년 8월 20일
0

Mac 환경설정

목록 보기
3/3
post-thumbnail

Mac OS (M1 Chip) 에서 utm을 사용해 ubuntu 18.04 + ROS 1 Melodic을 세팅하는 것이 불가능하기 때문에 이를 대체할 수 있는 방법을 공유한다!
(LIMO 로봇을 구동해야하는데 지원하는 OS가 ubuntu 18.05 + ROS1 Melodic만 사용 가능해서 찾다찾다 정리된 블로그가 없어서 작성한다...)

🚨 < Problem > Mac에서 Docker를 이용해 ROS를 사용하려고 하면 XQuartz 를 사용하여 ROS GUI 애플리케이션 (ex. RViz, Gazebo, etc)를 사용해야 한다. 이 경우 Mac-Docker-XQuartz 관계가 복잡하게 얽혀있어 오류가 나는 경우가 많고 해결이 복잡하다.

💡 < Solution > 이를 해결하기 위해 Tiryoh의 GitHub의 docker-ros desktop-vnc 프로젝트의 리드미 파일을 참조하여, 해당 프로젝트를 활용하는 방법을 정리하였다. 이 프로젝트는 ROS를 포함한 데스크톱 환경을 Docker 컨테이너 내에서 VNC (Virtual Network Computing)를 통해 사용할 수 있게 해준다.

Prerequirements

  • Docker
  • Mac OS (Apple Silicon)
    필자는 💻 Macbook M1 Pro 노트북을 사용중이다.
    지인은 💻 Macbook M2 air 노트북을 사용중인데 아래 방법으로 세팅에 성공하였다.

Set up

1. Clone the Repository

이 프로젝트를 로컬에 클론한다.

git clone https://github.com/Tiryoh/docker-ros-desktop-vnc.git
cd docker-ros-desktop-vnc

2. Docker 이미지 빌드

이미 빌드된 이미지를 Docker Hub에서 가져오는 게 더 빠르기 때문에 이미 사용되고 있는 이미지를 빌드해보자!

docker pull tiryoh/ros-desktop-vnc:melodic

3. Docker 컨테이너 실행

컨테이너를 실행한다. 아래 명령어를 사용하면 된다.

docker run -it --rm \
  --name=ros1_melodic_vnc \
  -p 6080:80 \
  tiryoh/ros-desktop-vnc:melodic

🚨 < Warning! > --rm 을 사용하면 1회성 컨테이너가 생성되는 것이기 때문에 docker에서 exit 명령어를 사용해 나가면 컨테이너가 사라진다!
💡 자세한 명령어는 docker 시리즈에 추후 업로드 할 예정이다. 간단하게만 설명해보자면

  1. --name=ros1_melodic_vnc: --name 옵션은 실행되는 컨테이너에 이름을 지정한다. (컨테이너의 이름은 ros1_melodic_vnc로 설정했다.)
  1. -p 6080:80:-p 옵션은 포트 매핑을 설정한다. 호스트 머신의 포트 6080을 컨테이너의 포트 80에 매핑했다.

    • 이 과정을 거치면 로컬 컴퓨터의 웹 브라우저에서 http://localhost:6080으로 접속해 컨테이너에서 실행 중인 VNC 서버에 접근할 수 있다.
  2. tiryoh/ros-desktop-vnc:melodic: 사용할 Docker 이미지의 이름과 태그를 지정한다. 여기서 tiryoh/ros-desktop-vnc는 이미지의 이름이고 (2번 과정에서 pull 한 image), melodic은 태그이다. ROS Melodic 버전이 설치된 이미지를 사용하기 위해 태그를 지정해주자!

4. 브라우저로 접속해보자

컨테이너가 실행된 후, 브라우저를 열고 http://localhost:6080으로 접속한다.

상단바의 Menu 누르고 terminator를 검색하면 터미널 창에서 작업할 수 있다.

5. ROS 애플리케이션 실행

터미널을 열고 ROS 관련 명령어를 실행하면 시뮬레이터가 정상적으로 작동하는 것을 확인할 수 있다!!!

roscore &
rviz

😭 여기까지 확인하면 완성이다! 🎉 우여곡절 끝에 성공했지만 VScode도 설치하고 사용해보려고 하니 너무 많은 에러가 생겼다...💢 VScode 설치까진 완료했지만 터미널 연결이 불가능해 뭐가 문제인지 잘 모르겠다... 에효

profile
아직 배울 게 많은 학생입니다!

2개의 댓글

20.04 버전도 부탁드려요 ~

1개의 답글