일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- ros2 튜토리얼 환경설정
- CodeUp
- Nav2 document
- nav2 dev contatiner
- ros2 foxy docker
- nav2 설치
- nav2 튜토리얼
- Python
- nav2 tutorial
- 코드업
- nav2 first-time robot setup guide
- ros2 튜토리얼
- ros2 remapping
- nav2 getting started
- ros2 환경설정
- nav2 development guides
- docker foxy
- nav2 development guides
- CODEUP 6073
- ros2 configuring environment
- first-time robot setup guide
- humble 환경설정
- ros2 development guides
- foxy nav2
- Foxy tutorial
- humble development guides
- error
- development guides
- ROS FOXY 튜토리얼
- ros2 foxy tutorial
Archives
- Today
- Total
BAN2ARU
[Rasp/ROS2] 라즈베리파이4 OS에 도커를 활용하여 ROS2 실행 - turtlesim_node 본문
반응형
이 글에 앞서 라즈베리파이4에 도커 설치하기는 해당 부분에서 확인할 수 있음
라즈베리파이4에 Docker를 활용하여 ROS2 설치는 해당 부분에서 확인 할 수 있음
이번에는 도커를 활용하여 ROS2를 실행하고 GUI 설정하여 turtlesim_node를 실행해보자.
GUI를 실행하기위한 docker 실행
도커를 실행하는 부분에 옵션 내용이 많은데, 해당 옵션들의 설명은 다음과 같다
- -it: install 과 terminal 옵션을 합친 것으로, 컨테이너를 종료하지않은 채로 터미널의 입력을 컨테이너로 전달하기 위해서 사용되는 옵션
- --name: 생성할 컨테이너에 임의의 이름을 지정해주는 옵션
- -v /tmp/.X11-unix:/tmp/.X11-unix: -v는 볼륨 지정 옵션으로 호스트와 컨테이너의 디렉토리를 연결하는 옵션.(<Host 절대경로>:<Container 절대경로> 순서) ROS는 기본적으로 GUI가 필요므로 x11을 사용하기 위해 지정해줌.
- -e DISPLAY=$DISPLAY: e는 컨테이너 내에서 사용할 환경변수를 설정하는 옵션. GUI로 x11을 활용하므로 DISPLAY에 x11로 지정해줌.
- /bin/bash : 이미지 안의 /bin/bash를 실행하는 옵션임
docker pull arm64v8/ros:foxy
docker run --name ros_gui -it -v /tmp/.X11-unix:/tmp/.X11-unix -e DISPLAY=$DISPLAY arm64v8/ros:foxy /bin/bash
GUI를 위해 x-host 설정해주기
1. 도커상에서 해당 부분 실행
docker start [컨테이너명]
docker attach [컨테이너명]
apt-get update
apt-get install x11-apps
2. 라즈베리파이상에서 해당 부분 실행
$ xhost +local:docker
xhost: unable to open display ""
만약 위와 같은 오류가 발생한다면 아래 부분을 차례대로 실행시켜주자
export DISPLAY=:0.0
sudo apt install x11-xserver-utils
xhost +local:docker
* 만약 Display 설정 중에 docker를 실행했다면 docker에서 export DISPLAY=:0.0을 실행하면 됨
정리 : 도커를 활용하여 GUI를 활용할 시
위의 방법대로 모든 과정이 끝났다면, 아래와 같은 방식으로 진행된다고 볼 수 있음
docker pull arm64v8/ros:foxy
xhost +local:docker
docker run --name ros_gui -it -v /tmp/.X11-unix:/tmp/.X11-unix -e DISPLAY=$DISPLAY arm64v8/ros:foxy /bin/bash
위와 같은 방식으로 docker run 실행후에 아래 부분을 진행하면 라즈베리파이에서 GUI를 통해 거북이를 볼 수 있다!
ros2 run turtlesim turtlesim_node
참고사이트 : http://wiki.ros.org/turtlesim
728x90
'Linux > Raspberry pi' 카테고리의 다른 글
[Rasp/Lidar] 라즈베리파이에서 도커환경에서 ROS2를 통해 라이다 실행하기 (0) | 2023.05.16 |
---|---|
[Rasp/ROS2] 라즈베리파이4 OS에 도커를 활용하여 ROS2 설치 (0) | 2023.05.15 |
[Rasp/Docker] 라즈베리파이4에 도커 설치하기 (1) | 2023.05.15 |
Comments