# Install Memgraph

Memgraph can be installed on various systems, but the most common way of running
it is using Docker. If you're new to Memgraph we recommend running [Memgraph
Platform](https://memgraph.com/docs/getting-started#install-memgraph-platform), a multi-container
application. It includes the database and all the tools you might need to
analyze your data, such as command-line interface
[mgconsole](https://memgraph.com/docs/getting-started/cli), web interface [Memgraph
Lab](https://memgraph.com/docs/data-visualization) and a complete set of algorithms within a
[MAGE](https://memgraph.com/docs/advanced-algorithms) library.


> **Info**
>
> Memgraph Platform is no longer a single-container application. Before (Memgraph
> < 2.14), Memgraph Platform was a separate Docker image released on Docker Hub.
> This image is no longer supported, because having database service and client
> service in the same container is not a good practice. Still, with Memgraph Lab
> being released on Docker Hub, it is possible to run Memgraph MAGE and Lab as two
> separate services, and in that way, running Memgraph Platform as a
> multi-container application with [Docker
> Compose](https://memgraph.com/docs/getting-started/install-memgraph/docker-compose).


For a quick start, please follow the [Getting started guide](https://memgraph.com/docs/getting-started). 

## Installation options

The quick start will accelerate your first steps with Memgraph. If you plan on
using Memgraph for your project, it's best to familiarize yourself with the
installation options and pick the preferred one.


> **Info**
>
> As of version 3.13, the native Linux packages are **distro-agnostic**: there is
> a single `.deb` package for all Debian-family distributions (Debian 12+, Ubuntu
> 22.04+) and a single `.rpm` package for all RHEL-family distributions
> (RHEL/CentOS/Rocky 9+, Fedora 42+), per architecture. Any Linux with glibc 2.31
> or newer is supported. The per-distribution pages below therefore install the
> same package — they differ only in distribution-specific setup steps.
>
> Memgraph requires **Python 3.10 or newer** on the host (used by Python query
> modules and the auth/SSO modules). Memgraph binds to the host's Python at
> runtime, so any installed version from 3.10 upwards works; on distributions
> whose default `python3` is older (e.g. CentOS 9 with 3.9), the package installs
> and uses a newer interpreter automatically. Docker images ship a suitable
> Python already.



- [Docker](https://memgraph.com/docs/getting-started/install-memgraph/docker)
- [Debian](https://memgraph.com/docs/getting-started/install-memgraph/debian)
- [Ubuntu](https://memgraph.com/docs/getting-started/install-memgraph/ubuntu)
- [CentOS](https://memgraph.com/docs/getting-started/install-memgraph/centos)
- [Fedora](https://memgraph.com/docs/getting-started/install-memgraph/fedora)
- [Red Hat](https://memgraph.com/docs/getting-started/install-memgraph/redhat)
- [Memgraph Cloud](https://memgraph.com/docs/getting-started/install-memgraph/memgraph-cloud)
- [Docker Compose](https://memgraph.com/docs/getting-started/install-memgraph/docker-compose)
- [Kubernetes](https://memgraph.com/docs/getting-started/install-memgraph/kubernetes)
- [WSL](https://memgraph.com/docs/getting-started/install-memgraph/wsl)
- [Rocky](https://memgraph.com/docs/getting-started/install-memgraph/rocky)
- [[Discontinued] Amazon Linux](https://memgraph.com/docs/getting-started/install-memgraph/amazon-linux)




You don't want to bother with installation? Done!

Register and run a [Memgraph Cloud](https://memgraph.com/cloud) instance with a
2-week trial period.

### System configuration

Before running Memgraph, please check the [system configuration guidelines](https://memgraph.com/docs/database-management/system-configuration), especially the
`vm.max_map_count` parameter setting.

## System requirements

Below are minimum and recommended system requirements for installing Memgraph.

|                    | Minimum                                                                                                                   | Recommended                                                                                                    |
| ------------------ | ------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- |
| CPU                | Server or desktop processor: 
 Intel Xeon 
 AMD Opteron/Epyc 
 ARM machines or Apple M1 
 Amazon Graviton | Server processor: 
 Intel Xeon 
 AMD Opteron/Epyc 
 ARM machines or Apple M1 
 Amazon Graviton |
| RAM                | 1 GB                                                                                                                      | ≥ 16 GB ECC                                                                                                    |
| Disk               | 1 GB                                                                                                                      | at least 3x the amount of RAM (NVMe SSD, mirroring RAID 1)                                                     |
| Cores              | 1 vCPU                                                                                                                    | ≥ 8 vCPUs (≥ 4 physical cores)                                                                                 |
| Network Throughput | 100 Mbps                                                                                                                  | ≥ 1 Gbps                                                                                                       |
| Network Latency    | < 10ms                                                                                                                    | < 1ms                                                                                                          |


The disk is used for storing database [durability files](https://memgraph.com/docs/configuration/data-durability-and-backup), including snapshots and write-ahead
logs. By default, Memgraph stores the **three most recent snapshots** in the database  (this can be configured using the `--storage-snapshot-retention-count` flag).
Snapshots size is usually less than the amount of RAM that is needed to load the data into memory.

The number of CPU cores required depends on your specific use case. For horizontal scalability, you can increase the number of 
available cores on your system for additional scalability.

Check out how the [storage memory](https://memgraph.com/docs/fundamentals/storage-memory-usage) is used,
and calculate memory requirements based on your data.
