I am trying to figure out if there is a way to create an external database of images and configure my Crafter website to allow users to query this database and display the image or images if multiples are selected. There are thousands of them and trying to upload them all and display them individually would not be practical as more images are added to this database all the time. I am fairly new to development and have tried reading through the documentation, so I might have missed an obvious solution to this problem due to lack of knowledge.
Thanks!
I'll restate the problem to make sure I fully understand it.
You have a Website built with CrafterCMS, and on the delivery side (Crafter Engine) you'd like to be able to query an external database and display what's in it to the end-user.
Crafter Engine allows you to develop your site/Webapp in Groovy (Controller) and FreeMarker (View). You can build almost anything with that.
Additionally, CrafterCMS comes with Elasticsearch built-in, and that might be an option for your "database" here.
Options:
Index your images in Elasticsearch and query that. If you use the same index as Crafter's delivery tier, then your content and images are all in the same place. This means one query returns ranked content and images so the experience is unified. (See Crafter Deployer for an example of how that's done with Tika. Remember you may have to support a re-index functionality.)
Index your images in DynamoDB or MongoDB, use Grapes to pull a driver into your Groovy code, and query those databases. (MongoDB is one of the easiest.)
Use CrafterCMS's blob-store mechanism to bulk upload the images into Studio (but they'll be stored in AWS S3) and the Deployer will index it all for you if configured to. Then query as you normally do. The downside is that you said you didn't want to upload/manage the images in CrafterCMS.