Skip to content
the-destro edited this page Sep 30, 2015 · 2 revisions

Implementation Notes

Current State

Right now the current Amhappy is a marginal POC.

What Doesn't Work Well

  1. It doesn't track the state of the daemon
  2. It uses an old restricted version of compose and its private API's
  3. It relies on the nginx-proxy image for some of the "best" features but the dependency is implicit at best
  4. The NGINX config seems to cause some very annoying caching issues
  5. nginx can only do well as a http proxy.

This list is obviously apart from the bugs in the system itself.

What Works

So my current thoughts about what works. I really have liked the idea of a solid structure for the traditional web app

  1. DB
  2. Code
  3. Application Runner

I also have liked the idea of named vhost routing. It has worked well for alpha sandboxes and passably for developer environments. While I have enjoyed the emergence of things like weave and kubernetes it seems like there would be substantial development work needed in order for it to fit this model.

Roadmap???

Yes I love roadmaps. So, current idea is this:

  1. Integrate more tightly with compose: instead of using the internal API's use yaml files and the extends to handle the vhost configs. This would involve removing CouchDB as a req
  2. Use HAProxy instead of nginx. This would allow for routing to db's and other containers instead of just the web frontend
  3. Craft a script to watch the docker socket for events and generate the HAProxy Config
  4. Add in managing the proxy to the GUI
  5. ReWrite the angular app using ui-router
Clone this wiki locally