Step 1 : Setup environment (docker & ROS2)
Langkah pertama memulai proyek robotika: Instalasi Docker dan ROS 2 Humble di Raspberry Pi 5. Tutorial lengkap dengan konfigurasi Docker Compose agar efisien dan rapi.
Setelah memikirkan dengan segala pertimbangan, dan memutuskan dengan menyadari bahwa disetiap keputusan ada resiko yang akan dihadapi. sekarang kita beraksi, agar semua tidak menjadi fiksi, dan langkah pertama kita tentunya adalah Setup environment pastinya.
Sebelumnya berikut Hardware dan OS yang saya gunakan:
- Hardware -> Raspberry Pi 5 varian 16GB RAM
- OS -> Raspberry Pi OS Bookworm
Sekarang kita mulai instalasi-nya:
1. Install docker & docker compose
# Kita mulai dengan melakukan Update dan Upgrade pada OS nya dulu kawan kawan,
# untuk memastikan semua paket sistem Anda berada dalam versi terbaru.
sudo apt update && sudo apt upgrade -y
# Lalu install docker dengan convenience script resmi dari docker, skrip ini akan
# mendeteksi arsitektur (32-bit atau 64-bit) dan mengonfigurasi repositori
# secara otomatis.
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
# Secara default, kita harus menggunakan sudo untuk menjalankan perintah docker
# nah kalau kamu mau bisa menggunakan user yang biasa kamu pakai tanpa sudo
# pakai ini
sudo usermod -aG docker $USER
# Verifikasi instalasinya dengan ini ya kawan kawan
docker --version
Oke sekarang docker telah siap, kita ke step berikutnya
2. ROS2 Humble
Setelah docker sudah terinstall dengan baik, berikutnya kita akan melakukan instalasi ROS2 Humble, berikut step by step nya
Siapkan direktori nya, dan masuk kedalam direktori ROS yang sudah kita buat
mkdir -p ~/ros2_ws
cd ~/ros2_ws
didalam direktori-nya kita buat file docker-compose.yaml
vim docker-compose.yaml
# isikan code berikut:
services:
ros2:
# Membangun image dari Dockerfile di direktori yang sama
build:
context: .
dockerfile: Dockerfile
container_name: ros2_humble
# Networking dan IPC untuk performa maksimal ROS 2
network_mode: host
ipc: host
# Agar container interaktif dan tetap menyala
stdin_open: true
tty: true
environment:
- RMW_IMPLEMENTATION=rmw_fastrtps_cpp
volumes:
- ./workspace:/root/ws
command: bash
Simpan, dan buat Dockerfile-nya
vim Dockerfile
# isikan code berikut
# Gunakan base image ROS 2 Humble khusus ARM64
FROM arm64v8/ros:humble
# Hindari prompt interaktif saat instalasi
ENV DEBIAN_FRONTEND=noninteractive
# 1. Update dan Install Vim serta tools dasar untuk pengembangan Vision
RUN apt-get update && apt-get install -y \
vim \
git \
curl \
build-essential \
python3-pip \
ros-humble-cv-bridge \
ros-humble-vision-opencv \
&& rm -rf /var/lib/apt/lists/*
# 2. Set working directory sesuai dengan volume di docker-compose
WORKDIR /root/ws
# 3. Optimasi Terminal: Alias dan Auto-source ROS
# Biar nggak perlu ketik 'source /opt/ros/humble/setup.bash' tiap masuk container
RUN echo "source /opt/ros/humble/setup.bash" >> /root/.bashrc \
&& echo "alias ll='ls -la'" >> /root/.bashrc
# Perintah default
CMD ["bash"]
Simpan dan jalankan
docker compose up -d
Terakhir masuk ke dalam kontainer-nya dan jalankan
docker exec -it ros2_humble bash
source /opt/ros/humble/setup.bash
ros2 topic list
Kalau tidak ada error seharusnya semua akan baik baik saja. Sampai disini instalasi docker dan ROS2 Humble selesai, dipostingan berikutnya kita akan lakukan apa ya?
— Prahastha