Docker上でCarlaを動かす。
noVNCを使うことでWebブラウザ上で実行可能
ホストの要件
Nvidia GPUカード1枚が認識できるDockerサーバー
Dockerサーバー Dockerクライアント ともに、OSのバージョンは、なんでも良いが、cuda-toolkitのバージョンは、ともに合わせなければならない。
ここでは、 OS 22.04.2 Docker version 20.10.19, build d85ef84 で検証
ubuntu18.04でcuda12.1 のドライバに統一。nvidia-smiでバージョンを確認する。もし一致していないなら、
cuda-toolkitを検索し、
Linux->x86_64->Ubuntu->18.04->deb(local)
の手順に書いてあるところを参考に、Dockerfileを書き換える。
cuda-toolkitとnvidia-docker2をインストールする。
sshログインしてnvidia-smi
を実行して、GPUが検出されることと、入っているドライババージョンを確認
> git clone https://www.ikko-lab.k.hosei.ac.jp/gitbucket/git/ikko/glx-docker-headless-gpu.git > cd glx-docker-headless-gpu > ./build.sh
> ./run.sh
https://192.168.100.231:6080
マウス右クリックで、ターミナル開く
m リターンでユーザーモードに切り替えスクリプトを実行
> m > cd scripts > ./startcarla.sh
Pattern 1
マウス右クリックで、ターミナル開く
> m > cd scripts > ./launchcarla.sh
Pで自動運転
Pattern 2
マウス右クリックで、ターミナル開く 次に、
> m > cd CARLAXXXXX/PythonAPI/examples > ./manual_control.py
Pで自動運転 ちなみに、manual_control.pyには、syncモードがある。 デフォルトのasyncモードでは、うまく制御できないので、 syncモードにしている。(確認しながらシミュレーションをするのでフレームレートが遅くなる)
> m > cd CARLAXXXXX/PythonAPI/examples > ./manual_control.py --sync