Install a Neo4j standalone instance

Getting everything to work in Kubernetes requires that certain K8s objects have specific names that are referenced elsewhere. Each individual Neo4j instance is a Helm “release” and has a release name. All other names and labels of K8s objects created by the Helm charts derive from both neo4j.name and release name.
Release name must consist of lowercase alphanumeric characters, - or ., and must start and end with an alphanumeric character. This guide assumes the release name is my-neo4j-release and neo4j.name is my-standalone.

  1. Install Neo4j using the deployment values.yaml file, created in Create a value.yaml file, and the neo4j/neo4j Helm chart:

    1. Create a neo4j namespace and configure it to be used in the current context:

      kubectl create namespace neo4j
      kubectl config set-context --current --namespace=neo4j
    2. Install the Neo4j standalone server:

      helm install my-neo4j-release neo4j/neo4j --namespace neo4j -f my-neo4j.values.yaml
      Example output
      LAST DEPLOYED: Wed Oct 26 15:19:17 2022
      NAMESPACE: neo4j
      STATUS: deployed
      REVISION: 1
      TEST SUITE: None
      NOTES:
      Thank you for installing neo4j.
      
      Your release "my-neo4j-release" has been installed in namespace "neo4j".
      
      The neo4j user's password has been set to "my-password".To view the progress of the rollout try:
      
        $ kubectl --namespace "neo4j" rollout status --watch --timeout=600s statefulset/my-neo4j-release
      
      Once rollout is complete you can log in to Neo4j at "neo4j://my-neo4j-release.neo4j.svc.cluster.local:7687". Try:
      
        $ kubectl run --rm -it --namespace "neo4j" --image "neo4j:5.1.0" cypher-shell \
           -- cypher-shell -a "neo4j://my-neo4j-release.neo4j.svc.cluster.local:7687" -u neo4j -p "my-password"
      
      Graphs are everywhere!
  2. Run the kubectl rollout command provided in the output of helm install to watch the Neo4j’s rollout until it is complete.

    kubectl rollout status --watch --timeout=600s statefulset/my-neo4j-release

    Since you have not passed a password for the neo4j user, the Neo4j Helm chart has set an automatically generated one. You can find it in the Helm install output. Please make a note of it.