Hacker News new | past | comments | ask | show | jobs | submit login

I really like the idea here, but haven't thought of a good way to do it with languages like Python/Ruby/Javascript.

Is there any good way to bundle up, say, a Flask app on Gunicorn into a single, minimal-dependency executable? Or a Rails app? I haven't found any satisfactory solutions. There are projects that will compile python down, but that doesn't seem to cover the WSGI server part (gunicorn, etc).




> Is there any good way to bundle up, say, a Flask app on Gunicorn into a single, minimal-dependency executable?

You don't need to build a single executable for this approach to work. You could use something like buildroot to build your runtime docker image.

docker-nano was doing something to that effect, see for example nano/node.js: https://github.com/Docker-nano/Node.js


To track down dependencies, "strace" is your friend. And no, that's not an ideal solution, but it works reasonably well. Couple that with "ldd" on the interpreter.

For Ruby, additionally "bundle install --standalone --path [..]" gets your far.


it's possible to do this with PEX. I've done this experimentally by subclassing gunicorn.app.base.Application. Haven't tried it out in prod yet though.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: