> For the complete documentation index, see [llms.txt](https://docs.edgegap.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.edgegap.com/docs/tools-and-integrations/container/first-docker.md).

# Your First Docker

Now that you have docker running on your computer let's create your first Dockerfile.

Before creating a container, you need to understand what a container is. A container runs natively on Linux (or in Docker desktop) and shares the host machine's kernel with other containers. It runs a discrete process, taking no more memory than any further executable, making it lightweight.

<figure><img src="/files/kpknD6SqkELAiTz59rMA" alt=""><figcaption></figcaption></figure>

Now that you've set up your environment, you can begin to develop containerized applications.

Since the documentation on how to create a container is already readily available online, we suggest you follow this excellent guide from Docker on Building and Running your image:

[Docker - Get Started Guide](https://docs.docker.com/get-started/02_our_app/)

{% hint style="info" %}
We recommend using the base image that you are comfortable ([CentOS](https://hub.docker.com/_/centos), [Ubuntu](https://hub.docker.com/_/ubuntu), [Debian](https://hub.docker.com/_/debian) or [Alpine](https://hub.docker.com//alpine)). We can run all Linux-based kernels without issues.
{% endhint %}
