This is a very quick script to get a single instance of neo4j running in a docker container. The username and password is set using the NEO4J_AUTH environment variable.
#!/bin/bash
#
# Script: neo4j-docker.sh
# Purpose: install neo4j container image after some simple environmentment prep
#
DOCKER=$(which docker)
[ $? == 0 ] || { echo "ERROR: Check if docker is installed (and in your PATH)" ; exit 1; }
DATA_DIR="$HOME/docker/neo4j-volumes/data"
LOG_DIR="$HOME/docker/neo4j-volumes/logs"
IMPORT_DIR="$HOME/docker/neo4j-volumes/import"
PLUGINS_DIR="$HOME/docker/neo4j-volumes/plugins"
RUNNING_CONTAINER=$($DOCKER ps -a | grep "neo4j:latest" | awk {'print $1'})
[ -z "$RUNNING_CONTAINER" ] || docker rm -f $RUNNING_CONTAINER
[ -d $DATA_DIR ] && rm -rf $DATA_DIR/* || mkdir $DATA_DIR
[ -d $LOG_DIR ] && rm -rf $DATA_DIR/* || mkdir $LOG_DIR
[ -d $IMPORT_DIR ] && rm -rf $DATA_DIR/* || mkdir $IMPORT_DIR
[ -d $PLUGINS_DIR ] && rm -rf $DATA_DIR/* || mkdir $PLUGINS_DIR
$DOCKER run \
--name testneo4j \
-p7474:7474 -p7687:7687 \
-d \
-v $DATA_DIR:/data \
-v $LOG_DIR:/logs \
-v $IMPORT_DIR:/var/lib/neo4j/import \
-v $PLUGINS_DIR:/plugins \
--env NEO4J_AUTH=neo4j/test1234 \
neo4j:latest