以下のページで簡単にdocker runコマンドを生成できます
--> https://hrjp.github.io/oneline_rosenv
ROS1/ROS2向けのDocker Image
- GPU,CUDA対応
- Ethernet,USB接続のセンサー等も使用可能
- bashスクリプトが自動生成されるのでコマンド1行でコンテナに入れる
git clone https://github.com/hrjp/rosenv# ROS1 melodic
./rosenv/docker/ros_melodic/run.bash
# ROS1 noetic
./rosenv/docker/ros_noetic/run.bash
# ROS2 foxy
./rosenv/docker/ros2_foxy/run.bash
# ROS2 humble
./rosenv/docker/ros2_humble/run.bash
# ROS2 jazzy
./rosenv/docker/ros2_jazzy/run.bash必要に応じて以下のオプションを指定する
| Option | Default | Details |
|---|---|---|
| -g | GPUを使用する | |
| -r | コンテナからexitした際にコンテナを自動消去する | |
| -w | --net-host をつけないで実行する(コンテナ外とネットワークを分離する) | |
| -n CONTAINER_NAME | コンテナの名前 | |
| -s SHARE_FOLDER_PATH | コンテナ内部と共有するディレクトリのパス rosbagをやデータを外部と共有する際に使用 (ex. shareフォルダを作ってから /home/$USER/share ) |
|
| -c CUDA_VERSION | CUDAバージョンを指定して使用する | |
| -h | このヘルプメッセージを表示する |
./rosenv/docker/ros2_jazzy/run.bash./rosenv/docker/ros2_jazzy/run.bash -g -n naviton -s /home/$USER/share
exitしてコンテナの外に出るとhomeディレクトリにCONTAINER_NAME.bash (CONTAINER_NAMEは自分で作成したコンテナの名前)が生成されている
cd
./CONTAINER_NAME.bash
次回からは上記のスクリプトを実行すると自動でコンテナをスタートしてコンテナ内に入れる