Docker上でGUIのROS1/ROS2を一瞬でセットアップする方法


Docker上でGUIのROSを動かす

 TiryohさんがGitHub上で素晴らしいリポジトリを公開していました。

 素晴らしさに感動してしまったので、素晴らしさを少しでも広めるために、簡単な紹介記事を書いてみます。

 このリポジトリは、Docker上でGUIのROSを動かすことができます。Dockerさえ入っていればMacでもLinuxでも(多分)Windowsでも、一瞬でUbuntu+ROSの環境が手に入ります。ROSはセットアップがそれなりに大変なので、Dockerさえ入っていればコマンド一発で環境構築できるのは最高ですね。

 Dockerって何?という方やインストール方法が分からない方は、以前私のブログに書いた下記記事を参照下さい。

 Dockerをインストールしたら、後は以下のコマンドを実行するだけです。

$ docker run -p 6080:80 --shm-size=512m tiryoh/ros-desktop-vnc:melodic

 初回は、イメージのダウンロードから始まるので時間かかります(2回目以降はすぐ起動します)。

 Docker上でVNCが走っているので、リモートログインができます。特殊なソフトは必要なくて、好きなブラウザで以下のアドレス(自分のPCのアドレス)にアクセスするだけです。

http://127.0.0.1:6080/

 これで、ブラウザ上でROS環境が動きます。ヒュー!最高ですね。あとは、2つターミナル起動して、それぞれに以下のようにコマンドを打つと、おなじみのカメさんのシミュレータが動きます。

$ roscore
$ rosrun turtlesim turtlesim_node


 カメさん!

 うれしくて、Twitterで呟いたら、TiryohさんからROS2版もあるよというコメント。まさに欲しかったやつです。最高かよ!ブログ記事も楽しみです!

 ROS2版のGitHubリポジトリは以下です。ROS版と同じ要領で動かせます。

まとめ

 Docker環境のGUIにブラウザでアクセスできるの、めちゃ良いですね。この組み合わせは他にも色々応用効きそうです。

追記

 リポジトリ製作者のTiryohさんが、公式にブログで解説記事を公開していらっしゃいますので、こちらも是非読みましょう!

 以下はスライド資料です。様々な環境構築手法に関してまとめられています。

参考リンク