Step 2: Docker Installation
Step 2: Docker Installation#
Duckietown uses DockerHub to distribute the containerized version
of its software modules, and most Duckietown procedures entail some docker
operations behind the scenes.
If you are unfamiliar with Docker, we strongly recommend reading the following reference page to gain a working understanding of this tool: The Duckietown Intro to Docker
Note
A free Docker account is sufficient for our purposes.
1) Install Docker
Install Docker by first ensuring that you don’t have older versions of Docker on your system
sudo apt-get remove docker docker-engine docker.io containerd runc
Then set up the apt repository containing Docker
sudo apt-get update
sudo apt-get install \
ca-certificates \
curl \
gnupg
Add the official GPG key
sudo mkdir -m 0755 -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
And set up the repository with
echo \
"deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
"$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
Finally, update again and install Docker Engine and Docker Compose
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
sudo apt-get install docker-compose
2) Set up Docker
Start by adding the user “docker” to your user group, then log out and back in
sudo adduser `whoami` docker
Attention
You need to log out and back in for this group change to take effect.
Checkpoint ✅
Now make sure that Docker was correctly installed by running the following tests
Test
docker --version
docker buildx version
Expected Result
Make sure the Docker version is v1.4.0+
and buildx
version v.0.8.0+
Test
Start the hello-world
image with
docker run hello-world
Expected Result
You should see a message like Hello from Docker!
1) Install Docker
Follow these instructions to install Docker on MacOS. Once done, follow the post-install instructions to configure your Docker environment.
Attention
If you are using Docker Desktop for Mac, you will need to specify the amount of memory usable by Docker
in order to run the Duckietown containers. Open the Docker menu and go to Preferences then Advanced.
Use the slider in the Advanced tab to increase Memory to a minimum of 4.5GB
.
Checkpoint ✅
Now make sure that Docker was correctly installed by running the following test.
Test
Start the hello-world
image with
docker run hello-world
Expected Result
You should see a message like Hello from Docker!
1) Install Docker
Follow these instructions to install Docker on WSL.
Checkpoint ✅
Now make sure that Docker was correctly installed by running the following test.
Test
Start the hello-world
image with
docker run hello-world
Expected Result
You should see a message like Hello from Docker!
Troubleshooting
SYMPTOM
I cannot start Docker from my WSL distribution.
RESOLUTION
Make sure you have WSL support for Docker enabled by following these instructions.