I'm deploying several neo4j instances in kubernetes. Each instance is a standalone db (i.e no clustering). I would like to be able to acees each of these dbs behid a nginx ingress controller (i.e. reverse proxy) so I know that I also need to deploy the neo4j reverse proxy chart. However, it enables to connect to a single db and not to each db individually as the ingress prefix is /. I tried to set a different prefix path (for example /db1), however, it doesn't work. Is there a solution for such scheme
You need to have a different strategy if you want to expose a tcp connection (bolt clients use tcp*). Instead of a path prefix I think it would be easier to use different sub domains like db1.mydomain.com, db2.mydomain.com ...
(* neo4j browser and other tools use javascript driver/websocket under the hood rather than tcp session, if you are only looking to expose these tools, there will maybe be the option to use the QueryAPI/Http in the future, it would make it a lot easier and also allow path prefix way of routing requests)
Alternative to consider:
Don't expose the database at all. Deploy your backend services to k8s as well and expose them instead. If you have developers/sysadmins that need to access the database, let them "port forward" and/or deploy cypher-shell.