# Docker Engine

Docker Engine is simply refered to as HOST with Docker installed on it . When we installed Docker then actually we installed three different components:

1\) Docker Dameon : Its a background process that manages Docker objects such as images, containers, volumes & networks.

2\) REST API Service is an interface that programs can use to talk to the Daemon & provide instrcutions. We can cretae our tools using REST API.

3\) Docker CLI is a command line interface that is used to perform actions such as running a container ,stopping containers, destroying images etc.It used REST API to interact with Docker Daemon.

Docker CLI needs not to be necessary on the same host. It could on that another system.

![](/files/-MERv6IXp_yp8tWC4FMX)

Docker uses namespaces to isolate workspace between containers.

![](/files/-MERvWloHwj7HSRPHbGK)

Two processes cannot have same process ID of 1. As we can see below there is no isolation between Container processes & HOST processes. This is where namespace come in to play.

![](/files/-MERw931cjsftvtnngRK)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://architectures.gitbook.io/project/docker/docker-engine-storage-and-networking/docker-engine.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
