Dealing with on-demand thumbnails is annoying, I've done something similar in the past [1].
In any case, transparently generating thumbnails from URLs is the saner solution, designers/editors might want to embed image of all sorts of sizes and aspect ratios and you can't always generate everything in batch - this is extremely common on news sites.
It looks like you could use thumbor (or any similar solution) as an external resource[0], so it doesn't matter what language it's written in.
That said, it usually feels safer to have something that works with the same stack.
We're using carrierwave, and it's pretty neat, but we had a few times where we had to scale thumbnails differently, and it turned out to be a pretty long batch operation, especially since we're storing images on S3.
I think that 'on-the-fly' conversion and caching could work better for larger sites that tend to change. Pre-processing doesn't scale so well.
In any case, transparently generating thumbnails from URLs is the saner solution, designers/editors might want to embed image of all sorts of sizes and aspect ratios and you can't always generate everything in batch - this is extremely common on news sites.
[1] https://github.com/hcarvalhoalves/django-rest-thumbnails