Search code examples
amazon-web-servicesneo4j

How can I responsibly deploy a Neo4j docker container in AWS?


How can I responsibly deploy a Neo4j docker container in AWS, with making daily backups and persisting it's storage?

For Neo4j community edition.


Solution

  • The way I've achieved it in the past is to deploy it to an ECS service and store data on an EFS volume.

    EFS allows multiple volume attachments, whereas EBS allows single attachments (mostly). You can configure snapshot rules with EFS to do daily backups with AWS Backup or enable automatic backups.

    You can read the full guide here but the gist is:

    • Create an EFS drive
    • Create an ECS cluster
    • In the task definition, mount the EFS drive at the path you've configured to have Neo4j read from

    And you'll need to make sure that your tasks and clusters have the appropriate IAM permissions with EFS.