

Ask HN: (Self hosted) App Hosting platform for developers? - edude03

I'm a developer who writes prototype apps for various clients in various languages. While there are some great PaaS hosts around, I find that the best option for me is usually self hosting. So that's fine I know how to configure and setup a VPS on rackspace or whatever, but what I really need is something that I can type the domain I want to setup, chose the type of app I want to deploy (djano, RoR, Scala, PHP, whatever) and have it take care of all the web app boilerplate stuff for me (creating nginx reverse proxy configs, DNS setup, installation of language libraries and requirements etc)<p>Does something like this exist?
======
sciurus
Have you seen Red Hat's OpenShift?

<https://openshift.redhat.com/app/>

It's a Heroku competitor which became open source last month.

[https://openshift.redhat.com/community/blogs/announcing-
open...](https://openshift.redhat.com/community/blogs/announcing-openshift-
origin-the-open-source-platform-as-a-service-paas)

There is a live CD which has all the components of Openshift already set up.

<https://openshift.redhat.com/app/opensource/download>

------
pgroves
Why can't you set up a virtual server with your default setting and
applications and then clone it? (I'm really asking for more details, not
making a suggestion in the form of a question.) You also get little benefits
like having your .vimrc and ssh keys copied over.

That's pretty much what I do, and I wouldn't want to have to maintain an
additional "personal heroku server" that would automate the deployments in the
way you're talking about.

~~~
edude03
This is sort of what I do, but the problem for me right now is keeping the
machines up to date. Because I sometimes don't use a specific stack for awhile
it becomes stagnant and I end up just rebuilding the image. Other than ssh
keys nothing really transfers over well between configurations. That said what
would be nice is if I had a way to setup a 'beacon' on each machine so that I
could write a fab script (or something) that when I type fab deploy -django it
would find y newly created django ready VM or whatever.

------
lucaspiller
I've also been interested in something similar, Heroku is great but just too
expensive for some of the stuff I want to play around with, when I can run all
of this on a single Linode box for $20/month. I've now created Puppet scripts
to automate the setup of new boxes but it still isn't as easy as PaaS.

Has anyone got any good tutorials for OpenShift and Cloud Foundry on EC2 or
the like? I found this, however it is 6 months old so I'm not sure how
relavent it is any more (I might give it a shot later...):
[http://www.cloudsoftcorp.com/blog/first-steps-with-cloud-
fou...](http://www.cloudsoftcorp.com/blog/first-steps-with-cloud-foundry-on-
amazon-ec2)

~~~
Pythondj
Here's my post on deploying a PaaS layer on EC2
[http://www.activestate.com/blog/2012/04/getting-started-
priv...](http://www.activestate.com/blog/2012/04/getting-started-private-paas-
amazon-ec2) and a link to the documenation <http://docs.stackato.com/>

that ought to get you started pretty quickly if you run into trouble, come to
the irc #stackato on freenode

------
qeorge
You can make your own pretty easily with a bash script.

You basically just need to clone from git, setup a VirtualHost, and restart
Apache/nginx. I don't have experience setting up Scala, Ruby, etc, but I've
done this for PHP and its trivial.

Start by writing a list of commands you issue to start a new project on your
dev server. Then add variables, a web form, and you're done.

------
jeffh
Try out Stackato (<http://www.activestate.com/stackato>) [note: I work for
ActiveState]. It's a commercial fork of Cloud Foundry that adds a lot more
functionality. You can download an image for your hypervisor of choice
(vSphere, fusion, vbox, ...), or provision one on EC2 or HP CS (no download
necessary).

ActiveState is the Python community lead for Cloud Foundry (we added and
maintain the support), but Stackato is much more than wrapping CF. It improves
security (all user code is staged and run in linux containers), adds much more
flexibility (hooks at staging or runtime, cron support, etc.), better
manageability (web based console, user/group management), persistent file
system, and more.

Also, if you like extensibility, a new experimental feature in 1.2 is Heroku
buildpack support. Basically you get Heroku-in-a-box.

~~~
Pythondj
The Heroku Buildpack support makes it wickedly easy to move your apps from
Heroku to your own Private Clouds

------
sgrove
There's Cloud Foundry <https://github.com/cloudfoundry/vcap>, but it may be
slightly too magical for you. We've been able to modify the it and integrate
new services into it fairly painlessly once we got over the initial hurdle.

------
csears
You might check out VMware's Cloud Foundry <https://github.com/cloudfoundry>
and RedHat's OpenShift <https://github.com/openshift>

------
jashmenn
Sort of. Ari Lerner (@auser) was working on a project like this sponsored by
AT&T. It was going to be an open-source heroku for your datacenter.

The code is here: <https://github.com/auser/beehive> though I'm not sure how
active it is.

------
edude03
Thanks for all the links guys, I'm going to give Cloudfoundary and OpenShift a
shot, OS looks a bit more feature filled but some of the blogs I've read say
OS is all marketing. I'll give both a shot and write a blog post which you'll
see soon here on HN (hopefully).

------
imperialWicket
AppFog is another service (still in beta) using cloudfoundry and supporting
it.

More generally, and potentially more cross-host compatible, this sounds like a
good opportunity for Puppet or Chef and a short config selection script.

------
tedchs
There is now a commercial version of Cloud Foundry, ActiveState Stackato.
There are some features they added to Cloud Foundry plus they offer support.
They have an EC2 AMI that you can just boot right up.

------
munimkazia
You can write a bash script to edit the server configuration files to add a
new virtualhost, copy the required files depending on the platform, and
restart the server. It really shouldn't be too hard.

------
dholowiski
Yeah, kind of like your own private Heroku. I want this too.

------
posabsolute
You just described webfaction, it's not a vps but you can deploy any kind of
apps very easily and you got ssh access

------
l4u
You can have boilerplate features with Ubuntu juju, puppet or chef. But it
isn't as easy as hosting on a PaaS.

------
laic
That's exactly what I was looking for and couldn't find.

------
necenzurat
+1

~~~
prpatel
As others have said, I would check out CloudFoundry. It is open-source &
extensible.

I do exactly what you describe on a VPS in the cloud. I host my own prototype
projects on a CloudFoundry instance. So far I've deployed these types of
projects: Rails, Grails (JVM + Servlet), node.js, and Clojure(script). I also
run production apps on CloudFoundry.

Setting up the instance(s) is easy, as there are plugins for most web
frameworks already out there. I'm doing a session at Uberconf where I walk
through my usage, process, and scripts for CloudFoundry. If there's enough
interest, I could be convinced to screencast it.

PS: I do not work for CloudFoundry. Just a happy user.

