What is Docker Desktop and Docker Engine in Linux?

Senali
3 min readMay 29, 2023

--

Docker Desktop

Docker desktop enabled to build and share containerized applications and microservices in environments Mac, Linux, or Windows. Just a one click application can be install. It provides GUI to manage containers, applications, and images directly from your machine.

What includes in Docker Desktop

  • Docker Engine
  • Docker CLI client
  • Docker Buildx
  • Extensions
  • Docker Compose
  • Docker Content Trust
  • Kubernetes
  • Credential Helper

How to install Docker Desktop?

Docker desktop available for mac, windows and linux. Here I’m explain how to install docker desktop in ubuntu.

Prerequisites

  1. For non-Gnome Desktop environments, gnome-terminal must be installed.

sudo apt install gnome-terminal

2. Uninstall the tech preview or beta version of Docker Desktop for Linux

sudo apt remove docker-desktop

3. For a complete cleanup, remove configuration and data files

rm -r $HOME/.docker/desktop
sudo rm /usr/local/bin/com.docker.cli
sudo apt purge docker-desktop

Install Docker Desktop

  1. Download latest DEB package.
  2. Install the package with apt as follows.

sudo apt-get update
sudo apt-get install ./docker-desktop-<version>-<arch>.deb

Check the versions of these binaries

docker compose version
docker — version
docker version

Docker Desktop installation complete now. Search docker desktop and open it.

Docker Engine

Docker Engine is an open source containerization technology for building and containerizing your applications. The CLI uses Docker APIs to control or interact with the Docker daemon through scripting or direct CLI commands.

Install Docker Engine on Ubuntu

Docker Engine can be install in different ways. Here we install using the apt repository.

Refer: How to install Docker Engine on Ubuntu 20.04

Difference between Docker Desktop and Docker Engine

Docker Engine is the fundamental containerization engine that runs on servers and manages containers, while Docker Desktop is a developer-focused tool that includes Docker Engine along with additional features to simplify the development and testing of containerized applications on local machines.

Docker Desktop for stores containers and images in an isolated storage location within a VM and offers controls to restrict its resources. Due to dedicated storage Docker Desktop prevents from interfering with a Docker Engine installation on the same machine.

So we can install Docker Desktop for Linux and Docker Engine on same machine side by side. Also both Docker Desktop and Docker Engine possible to run simultaneously. But there may be situations where running both at the same time can cause issues. So recommend to stop Docker Engine while using Docker Desktop to prevent the conflicts.

Stop the Docker Engine service

sudo systemctl stop docker docker.socket containerd

Switch between Docker Desktop and Docker Engine

View what contexts are available.

docker context ls

Switch between the Docker Desktop and Docker Engine

$ docker context use default

default
Current context is now "default"

$ docker context use desktop-linux

desktop-linux
Current context is now "desktop-linux"

Thank You!

--

--

Senali

I write about stuff I find interesting. Usually WebDev, DevOps, ML and occasionally Finance