Boot2docker: Not for use in production?

Created on 3 Feb 2015  路  5Comments  路  Source: boot2docker/boot2docker

It all looks good to me! Why should it not be used in production?
The wording is quite strong on this point in the README.

question

Most helpful comment

Two years later the strong warning is still there.

I'm using docker-machine and I find it quite strange that it uses boot2docker even if it should not be used in production.

All 5 comments

I'm also interested in understanding.

I'd like to clarify my question. I can think of two main reasons you might not want to use something in production:

1) Maturity

All projects are brand new code at some point, but eventually they become battle tested, if they are popular. So an immature project may be not suitable for production immediately, but can eventually become suitable.

2) Implicit limitations because of decisions that were made to optimize non-production use of the project

In a case like this, it's helpful to understand what choices may have been made that would legitimately make the project unsuitable for production, regardless of it's maturity. For example, valgrind is a mature product, but it's fundamentally meant to be a development tool and the performance characteristics make it completely unsuitable for use when you need to depend on fast and stable execution.

I understand that (1) applies to boot2docker. If that's the only problem, hopefully that could be fixed by time and effort applied to the project. However, if people are dissuaded from using the project for non-development purposes, it seems like the process of battle-testing it will take much longer.

For (2), if there are specific decisions that were made that are good for development with boot2docker but would cause problems in strenuous real-world use, it would be fantastic if someone could share what those decisions or trade-offs might be.

+1

A very minimal linux distro seems like the perfect thing to use in production: fewer resources wasted, and less attack surface.

The main issue I see is that the base is currently Tiny Core Linux, and a lot of the bugs we fight are bugs that they suffer from downstream as well (see things like #411, which are fixed in newer distributions with more fully-featured init systems). We also have a lot of inherited custom "magic" behavior (such as listening over TCP by default; see #1084) that's specific to boot2docker.

Two years later the strong warning is still there.

I'm using docker-machine and I find it quite strange that it uses boot2docker even if it should not be used in production.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

nguoianphu picture nguoianphu  路  4Comments

TomKeur picture TomKeur  路  5Comments

ghost picture ghost  路  14Comments

pheuter picture pheuter  路  7Comments

marius311 picture marius311  路  7Comments