[DOCKER] Install Autoware on Ubuntu 18.04.5

Install the latest Autoware from a clean Ubuntu state. (As of 12/24/2020)

reference: https://qiita.com/hgoj/items/e23c463b885e7bb1b911 https://qiita.com/kameyama-eiji/items/0b3f914dbe03a83a1231

First stage: Ubuntu installation https://qiita.com/atsuto/items/b31a82b984169c20f448

About PC

Alienware Memory: 32GB CPU: Intel Core i7 2.9GHz (8 cores) GPU:GeForce GTX 1080

About version

ROS:Autoware.AI ROS2:Autoware.auto There are two systems. About supported versions: https://faboplatform.github.io/AutowareDocs/07.RC_program/00.about_ros/ This time, ROS1, Ubuntu18.04.5, Autoware

git installation

sudo apt update
sudo apt install git

Clone and run

$ git clone https://gitlab.com/autowarefoundation/autoware.ai/docker.git
$ cd docker/generic
$ ./run.sh

error.

Docker installation

It seems that there is no Docker, so install it according to the following page. https://docs.docker.com/engine/install/ubuntu/ docker-ce 5:20.10.1~3-0~ubuntu-bio amd64

once again

$ sudo ./run.sh

There is no nvidia.

CUDA installation

https://qiita.com/ksasaki/items/b20a785e1a0f610efa08 https://developer.nvidia.com/cuda-downloads You should add -drivers at the end. cuda-drivers 460.27.04-1

sudo apt-get -y install cuda-drivers

Nvidia Docker option changes

Because the following error will occur

docker: Error response from daemon: Unknown runtime specified nvidia.

https://qiita.com/ksasaki/items/b20a785e1a0f610efa08 Changed from --runtime = nvidia to --gpus all, referring to

run.sh


    RUNTIME="--gpus all"

GPU recognition

An error that the GPU cannot be recognized.

docker: Error response from daemon: could not select device driver "" with capabilities: [[gpu]].

Refer to this area. https://qiita.com/tomp/items/50081b99df7963462488 https://blog.uni-3.app/2019/08/08/docker-gpu/ https://waldeinsamkeit.hatenablog.jp/entry/2019/08/17/002854

Is the GPU confirmation command returned?

$ nvidia-smi

In the end, it worked below.

$ systemctl restart docker.service

UID setting

Changing autoware user ID to match your host's user ID (0).
This operation can take a while...
usermod: UID '0' already exists

When I execute the command with sudo, the UID becomes 0, so I changed it to my own UID, 1000.

run.sh


USER_ID="$(id -u)"

run.sh


USER_ID="1000"

I passed!

boldly@boldly-Alienware-17-R4:~/Documents/docker/generic$ sudo ./run.sh 
[sudo] password for boldly: 
Using options:
	ROS distro: melodic
	Image name: autoware/autoware
	Tag prefix: latest
	Cuda support: on
	Pre-release version: off
	UID: <1000>
Launching autoware/autoware:latest-melodic-cuda
To run a command as administrator (user "root"), use "sudo <command>".
See "man sudo_root" for details.

autoware@boldly-Alienware-17-R4:/home/autoware$

The autoware user directory is created and you are the autoware user.

Start Autoware

$ cd Autoware
$ source install/setup.bash
$ roslaunch runtime_manager runtime_manager.launch &

↓ Result

... logging to /home/autoware/.ros/log/c5c1dc98-4693-11eb-94d6-9cb6d0e65079/roslaunch-boldly-Alienware-17-R4-84.log
Checking log directory for disk usage. This may take a while.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.

started roslaunch server http://boldly-Alienware-17-R4:34879/

SUMMARY
========

PARAMETERS
 * /rosdistro: melodic
 * /rosversion: 1.14.6

NODES
  /
    run (runtime_manager/run)

auto-starting new master
process[master]: started with pid [94]
ROS_MASTER_URI=http://localhost:11311

setting /run_id to c5c1dc98-4693-11eb-94d6-9cb6d0e65079
process[rosout-1]: started with pid [105]
started core service [/rosout]
process[run-2]: started with pid [108]
[run-2] process has finished cleanly
log file: /home/autoware/.ros/log/c5c1dc98-4693-11eb-94d6-9cb6d0e65079/run-2*.log

The screen came up.

Screenshot from 2020-12-25 18-32-36.png

About Autoware Docker

For some reason, when I stop the container or restart the PC, the Docker container disappears and I have to recreate it every time. Is that something like that? The file is shared between "~/shared_dir" on the host PC and "shared_dir" on the container.

Recommended Posts

Install Autoware on Ubuntu 18.04.5
Install Ruby on Ubuntu 20.04
Install Homebrew on Ubuntu 20.04
Install OpenJDK7 (JAVA) on ubuntu 14.04
Install Cybozu Office 10 on Ubuntu 20.4
Install Docker on Ubuntu Server 20.04
Install zabbix agent (5.0) on Ubuntu 18.04
Install MAV Proxy on Ubuntu 18.04
Install Java on WSL Ubuntu 18.04
Install Ubuntu Desktop 20.10 on RaspberryPi4
Install Arduino IDE on Ubuntu 20.04
Install raspi-config on Ubuntu 20.04 (LTS)
Install WordPress 5.5 on Ubuntu 20.04 LTS
Install PlantUML on Intellij on Ubuntu
Install Ubuntu Server 20.04 on Btrfs
Note: Install PostgreSQL 9.5 on Ubuntu 18.04
Install AWS IoT Greengrass on Ubuntu
Install JDK and JRE on Ubuntu 16.10
Install ngrok on ubuntu16.04 using Vagrant
How to install WildFly on Ubuntu 18.04
Install MQTT broker Mosquitto on Ubuntu 18.04
Install SonarQube on ECS instance on Ubuntu 16.04
Install ruby on Ubuntu 20.04 with rbenv
tmux on Ubuntu
Headless install of Ubuntu 20.10 on Raspberry Pi
Install OpenJDK (Java) on the latest Ubuntu
I want to install PHP 7.2 on Ubuntu 20.04.
Install Realtek network driver on Ubuntu Note
Screen recording on Ubuntu 20.04
Web Bluetooth on Ubuntu20.04
Wine settings on Ubuntu 18.04 (install WOLF RPG Editor)
Install gradle on mac
Install Corretto 8 on Windows
Install OpenJDK on macOS
Build and install Wireshark Development Release (3.3.1) on Ubuntu
Try DisplayLink on Ubuntu 20.04
Reinstall Kubernetes on Ubuntu 19.10
Install Java on Mac
Install Golang on CentOS 8
Use Flutter on Ubuntu
How to install network drivers on standalone Ubuntu
Install Neo4j 4.1.3 on centOS
Install ROS Noetic ubuntu20.04
Install Docker on Manjaro
How to install NVIDIA driver on Ubuntu 18.04 (Note)
Install Gradle with ubuntu16.04
Install PostgreSQL 12 on Centos8
Install nginx on centOS7
Install lombok on SpringToolSuite4
Install kuromoji on CentOS7
How to install multiple JDKs on Ubuntu 18.04 LTS
Setting JAVA_HOME on Ubuntu
Put JetBrains on Ubuntu
Install Mattermost on CentOS 7
Install PostGIS 2.5.5 on CentOS7
Install and switch between multiple Javas on Ubuntu
Install the latest version of Jenkins on Ubuntu 16
Use mkdir on ubuntu
Install jpndistrict on CentOS 7
Apache2 on Ubuntu20.04 LTS
Install openjdk11 on mac