ARM64에서 Docker 위에 ROS2 설치하기

전시온·2023년 6월 22일
0
post-thumbnail

준비물
Raspbery 4

Docker install

  1. apt에 Docker 저장소를 추가 (마지막 줄에서 amd64가 아닌 arm64)
sudo apt-get update

sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg \
    lsb-release

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

echo \
"deb [arch=arm64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
  1. Docker 엔진 설치
sudo apt-get update

sudo apt-get install docker-ce docker-ce-cli containerd.io
  1. Result
sudo docker run hello-world

ROS2 Image Install

링크에서 ROS 버전 선택 가능

  1. Tags 버튼 클릭
  2. humble image pull 하기
docker pull arm64v8/ros:humble
  1. Image 설치 결과 확인
  2. Container 생성하기
sudo docker run --name <컨테이너 이름> -dit arm64v8/ros:humble
  1. Conatainer 생성 확인
  • docker ps 명령어 입력시 컨테이너가 보이지 않을 때
    이전에 생성한 모든 컨테이너 보이기
docker ps -a
  1. 해당 컨테이너 시작
docker start <Container name>
  1. 해당 컨테이너 접속
docker exec -it <Container name> bash

ROS2 활성화

위 과정을 마친 후 터미널에 ros2를 입력하면 아무일도 일어나지 않는다.

source /opt/ros/humble/setup.bash

위 명령어를 통해 ROS2를 활성화 할 수 있다.

추가 작업

컨테이너에 접속하면 자동으로 ROS2를 활성하 되도록 ~/.bashrc 파일에 명령어를 추가

apt-get update	#nano를 위한 package update

apt-get install nano	#nano install

nano ~/.bahsrc	#bashrc 파일 열기 및 수정

아래 사진과 같이 bashrc 파일 맨 밑에 명령어 추가

  • nan -> nano 오타

sb : bashrc를 업데이트 하는 명령어 단축키
eb : bashrc를 수정하는 코드

수정 마치고 나가서 souce ~/.bashrc 명령어로 초기화
ros2 입력 후 결과 확인

Result

번외

ROS 버전 확인 명령어

printenv | grep ROS

Reference

https://www.cv-learn.com/20210808-docker-for-slam/

profile
Computer Vision, ROS, ROS2, 3D Lidar, IoT, 티스토리로 블로그 이전함

0개의 댓글