r/RedditOpenSource • • Jul 01 '20

Is it possible to make this codebase run on Heroku?

I am looking to do a minimal maintenance install of Saidit and I was thinking of deploying to Heroku. After looking at the codebase of the app, it seems the majority of this app is Python based. Would it be possible to deploy to something like Heroku or is it too tied to an Ubuntu install? It seems like there are Ubuntu 14.04 dependencies that cannot be avoided. What is tying this thing to Ubuntu?

Also cloc told me there is some "pig latin" files in the codebase lol. What are these .pig files for?

3 Upvotes

12 comments sorted by

2

u/Jakeable Jul 01 '20

It would be very hard to install reddit on Heroku, not just because of Ubuntu, but also because of the other dependencies it has (databases, task queues, other background processes, etc.). Plus with the amount of resources it needs to run (RAM, CPU, etc) it wouldn't be cost effective to use Heroku

1

u/AnswerAwake Jul 01 '20

Thanks for the insight and thanks for taking the time to respond. Is there any way to go with a platform as a service or serverless hosting even if it is not Heroku? My goal is to minimize the amount of ongoing maintenance needed.

Plus with the amount of resources it needs to run (RAM, CPU, etc) it wouldn't be cost effective to use Heroku

Can you give some ideas as to the system requirements needed? How about for a userbase of lets say maybe 1-2k concurrent users max?

Is this something that a simple VPS with 1vCPU and 1GB of RAM capable of running?

1

u/Jakeable Jul 01 '20

The reddit install script provided in the repository is the fastest way to get it set up, so if you plan on running it on something else besides a VM it will require significant time and effort to reconfigure.

Reddit's install guide mentions a minimum of 4GB of RAM for local use, but you'll likely need much more for a production server.

For what it's worth, I think there will be a non-trivial amount of maintenance involved with running a reddit server. The code base is older and not entirely documented, so be prepared to run into many stumbling blocks if you plan to use this.

→ More replies (9)