A large amount of software are capable of doing this. Illustrator, and InDesign can do this, photoshop can do this with a little bit of work. However, the canonical way to do this has been imagemagic. Not only can it do this fast, it can do it fully automated and is not encumbered with a license that stops you form doing this on a server.
Both Illustrator and InDesign use Data Merge, which takes a list in CSV format including pairs of text/image in a line-by-line comma-separated format, and generates composite files. Your source file will look like this (assumes Windows machine):
An AI or INDD template will ...