Official Repository

Last pushed: 3 days ago
Short Description
Neo4j is a highly scalable, robust native graph database.
Full Description

Supported tags and respective Dockerfile links

For more information about this image and its history, please see the relevant manifest file (library/neo4j). This image is updated via pull requests to the docker-library/official-images GitHub repo.

For detailed information about the virtual/transfer sizes and individual layers of each of the above supported tags, please see the repos/neo4j/ file in the docker-library/repo-info GitHub repo.

What is Neo4j?

Neo4j is a highly scalable, robust, native graph database. It is used in mission-critical apps by thousands of leading startups, enterprises, and governments around the world. You can learn more here.

How to use this image

Start an instance of neo4j

You can start a Neo4j container like this:

docker run \
    --publish=7474:7474 --publish=7687:7687 \
    --volume=$HOME/neo4j/data:/data \

which allows you to access neo4j through your browser at http://localhost:7474.

This binds two ports (7474 and 7687) for HTTP and Bolt access to the Neo4j API. A volume is bound to /data to allow the database to be persisted outside the container.

By default, this requires you to login with neo4j/neo4j and change the password. You can, for development purposes, disable authentication by passing --env=NEO4J_AUTH=none to docker run.

Note on version 2.3

Neo4j 3.0 introduced several major user-facing changes, primarily the new binary Bolt protocol. This is not available in 2.3 and as such, there is no need to expose the 7687 port. Due to changes made to the structure of configuration files, several environment variables used to configure the image has changed as well. Please see the 2.x specific section in the manual for further details.

You can start an instance of Neo4j 2.3 like this:

docker run \
    --publish=7474:7474 \
    --volume=$HOME/neo4j/data:/data \


For more examples and complete documentation please go here for 2.x and here for 3.x.

Supported Docker versions

This image is officially supported on Docker version 17.03.0-ce.

Support for older versions (down to 1.6) is provided on a best-effort basis.

Please see the Docker installation documentation for details on how to upgrade your Docker daemon.

User Feedback


If you have any problems with or questions about this image, please contact us through a GitHub issue.

For general Neo4j questions, please ask on StackOverflow.


We welcome pull requests on GitHub.

Docker Pull Command

Comments (7)
7 days ago


Sure, you can create a "Dockerfile" with something like this as the first line:

FROM neo4j:3.0

Help is here:

7 months ago

Hi! I'm new with docker, is there any way to get a neo4j instance without using docker run and using a Dockerfile instead?

7 months ago

Does anyone know how to set this up with AWS?

10 months ago

@dulfox Please can you create a Github issue explaining what you need?

10 months ago

I would have the ability to add some proxy settings to load CSV from the web

a year ago

@xenoterracide We expose a subset of the configuration options as environment variables (see the section "Environment variables" in the repo description). If that's not enough then you can change arbitrary configuration options by providing your own config files (see the section "/conf volume" in the repo description).

a year ago

being new to neo4j, how do you tweak the configuration file of neo4j with this image?