Running NSQ on Elastic Beanstalk

Here's a brief interlude from the regular scheduled programming of excerpts of my Spanish adventures for a technical post.

Over the past couple of days I've been dealing with some frustrating issues with Elastic Beanstalk and trying to get various things going. The most frustrating of which was trying to debug an .ebextensions invoked nsqd process for sending events down the pipeline to downstream services.

I tried a bunch of stuff, running nsqd ad-hoc, using an init.d style service, and even invoking nsqd from my app code. It turns out the best way to do what I wanted was using an upstart job, which worked a treat.

Anyway, dropping the below file into .ebextensions does the trick. From there you can configure nsqd to your requirements as per the NSQ docs.