Moby Project - a collaborative project for the container ecosystem to assemble container-based systems
Go to file
Sebastiaan van Stijn b654b6244d
Improve description of Running and Paused booleans
Commit abd72d4008 added
a "FIXME" comment to the container "State", mentioning
that a container cannot be both "Running" and "Paused".

This comment was incorrect, because containers on
Linux actually _must_ be running in order to be
paused.

This patch adds additional information both in a
comment, and in the API documentation to clarify
that these booleans are not mutually exclusive.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-05-19 12:29:54 +02:00
.github Update ISSUE_TEMPLATE.md 2016-10-17 11:43:25 +00:00
api Improve description of Running and Paused booleans 2017-05-19 12:29:54 +02:00
builder Refactor builder.calcCopyInfo and dependencies 2017-05-17 09:54:39 -04:00
cli Merge pull request #32587 from dmcgowan/trust-key-config 2017-05-11 21:03:47 +02:00
client Merge pull request #33267 from YuPengZTE/devImageWithDigestString 2017-05-18 23:37:52 +02:00
cmd/dockerd support cluster events 2017-05-17 11:46:30 -07:00
container Improve description of Running and Paused booleans 2017-05-19 12:29:54 +02:00
contrib Merge pull request #33151 from nwt/push-foreign-layers 2017-05-17 02:04:31 +02:00
daemon Merge pull request #33281 from dmcgowan/overlay2-on-btrfs 2017-05-19 03:09:39 +02:00
distribution Merge pull request #33151 from nwt/push-foreign-layers 2017-05-17 02:04:31 +02:00
dockerversion Move UAStringKey to dockerversion pkg 2016-12-26 18:53:22 -08:00
docs Docs and manual changes 2017-05-17 15:50:28 -07:00
experimental Fix list of experimental features 2017-05-03 23:29:11 +02:00
hack Update CLI commit hash 2017-05-18 12:23:28 -07:00
image Merge pull request #32949 from dnephin/refactor-streamformatter-and-progress 2017-05-03 09:05:26 -07:00
integration-cli Update CLI commit hash 2017-05-18 12:23:28 -07:00
layer Let graphdrivers declare diff stream fidelity 2017-03-31 08:32:00 -07:00
libcontainerd Merge pull request #32986 from moypray/containerd_close 2017-05-17 17:04:05 -07:00
man Docs and manual changes 2017-05-17 15:50:28 -07:00
migrate/v1 Use distribution reference 2017-02-07 11:08:37 -08:00
oci Update moby to runc and oci 1.0 runtime final rc 2017-05-05 13:45:45 -07:00
opts Remove unused opts (moved to docker/cli) 2017-05-15 14:38:58 +02:00
pkg Merge pull request #33269 from tophj-ibm/switch-more-syscalls-pkg-term 2017-05-19 02:37:52 +02:00
plugin Use chrootarchive for plugin rootfs 2017-05-18 14:53:46 -07:00
profiles Revert "Block obsolete socket families in the default seccomp profile" 2017-05-09 14:26:00 +01:00
project Merge pull request #31461 from jpetazzo/announce-all-the-rcs 2017-04-13 10:11:57 -07:00
reference reference: handle combination of tag and digest in ImageDelete 2017-02-16 10:48:40 +01:00
registry Add daemon option to push foreign layers 2017-05-16 14:36:36 -07:00
reports Add builder dev-report for 2017-05-15 2017-05-16 12:17:52 -07:00
restartmanager Adding support for docker max restart time 2017-02-04 03:54:47 +00:00
runconfig Windows: Block read-only 2017-05-08 09:29:37 -07:00
vendor Vendoring libnetwork 2017-05-18 15:14:12 -07:00
volume Merge pull request #32909 from cpuguy83/32907_volume_unmount_on_cp 2017-05-09 20:15:41 +02:00
.dockerignore [EXPERIMENTAL] Integration Test on Swarm 2017-02-28 02:10:09 +00:00
.gitignore delete generated rpm "changelog" 2017-03-29 18:19:07 +02:00
.mailmap Update AUTHORS and mailmap 2017-05-12 16:45:49 +02:00
AUTHORS Update AUTHORS and mailmap 2017-05-12 16:45:49 +02:00
CHANGELOG.md bump to rc2 2017-04-11 00:58:34 +02:00
CONTRIBUTING.md Update stackoverflow.com install counters 2017-04-09 09:19:06 +02:00
Dockerfile Remove zfs from static builds 2017-05-15 13:22:52 +02:00
Dockerfile.aarch64 Update golang to 1.8 2017-05-10 20:06:27 -04:00
Dockerfile.armhf Update golang to 1.8 2017-05-10 20:06:27 -04:00
Dockerfile.ppc64le Update golang to 1.8 2017-05-10 20:06:27 -04:00
Dockerfile.s390x Update golang to 1.8 2017-05-10 20:06:27 -04:00
Dockerfile.simple Update golang to 1.8 2017-05-10 20:06:27 -04:00
Dockerfile.solaris Add functional support for Docker sub commands on Solaris 2016-11-07 09:06:34 -08:00
Dockerfile.windows Update golang to 1.8 2017-05-10 20:06:27 -04:00
LICENSE Update copyright dates 2017-02-24 19:41:59 +00:00
MAINTAINERS Use personal email address 2017-04-26 11:59:51 -07:00
Makefile integration-cli-on-swarm/README.md: add a note about Docker->Moby 2017-05-15 14:37:05 +00:00
NOTICE Update LICENSE date 2017-02-15 17:34:33 +01:00
README.md Clarify relationship between Moby and Docker. 2017-04-21 06:20:46 -05:00
ROADMAP.md Header has incorrect punctuation. 2016-12-19 21:38:59 +08:00
VENDORING.md fix the bare url and the Summary of http://semver.org 2017-01-17 16:20:11 +08:00
VERSION bump API and version 2017-04-11 11:21:55 -07:00
poule.yml Disable auto-assign for Anusha 2017-04-26 17:18:06 -07:00
vendor.conf Vendoring libnetwork 2017-05-18 15:14:12 -07:00

README.md

Docker users, see Moby and Docker to clarify the relationship between the projects

Docker maintainers and contributors, see Transitioning to Moby for more details

The Moby Project

Moby Project logo

Moby is an open-source project created by Docker to advance the software containerization movement. It provides a “Lego set” of dozens of components, the framework for assembling them into custom container-based systems, and a place for all container enthusiasts to experiment and exchange ideas.

Moby

Overview

At the core of Moby is a framework to assemble specialized container systems. It provides:

  • A library of containerized components for all vital aspects of a container system: OS, container runtime, orchestration, infrastructure management, networking, storage, security, build, image distribution, etc.
  • Tools to assemble the components into runnable artifacts for a variety of platforms and architectures: bare metal (both x86 and Arm); executables for Linux, Mac and Windows; VM images for popular cloud and virtualization providers.
  • A set of reference assemblies which can be used as-is, modified, or used as inspiration to create your own.

All Moby components are containers, so creating new components is as easy as building a new OCI-compatible container.

Principles

Moby is an open project guided by strong principles, but modular, flexible and without too strong an opinion on user experience, so it is open to the community to help set its direction. The guiding principles are:

  • Batteries included but swappable: Moby includes enough components to build fully featured container system, but its modular architecture ensures that most of the components can be swapped by different implementations.
  • Usable security: Moby will provide secure defaults without compromising usability.
  • Container centric: Moby is built with containers, for running containers.

With Moby, you should be able to describe all the components of your distributed application, from the high-level configuration files down to the kernel you would like to use and build and deploy it easily.

Moby uses containerd as the default container runtime.

Audience

Moby is recommended for anyone who wants to assemble a container-based system. This includes:

  • Hackers who want to customize or patch their Docker build
  • System engineers or integrators building a container system
  • Infrastructure providers looking to adapt existing container systems to their environment
  • Container enthusiasts who want to experiment with the latest container tech
  • Open-source developers looking to test their project in a variety of different systems
  • Anyone curious about Docker internals and how its built

Moby is NOT recommended for:

  • Application developers looking for an easy way to run their applications in containers. We recommend Docker CE instead.
  • Enterprise IT and development teams looking for a ready-to-use, commercially supported container platform. We recommend Docker EE instead.
  • Anyone curious about containers and looking for an easy way to learn. We recommend the docker.com website instead.

Transitioning to Moby

Docker is transitioning all of its open source collaborations to the Moby project going forward. During the transition, all open source activity should continue as usual.

We are proposing the following list of changes:

  • splitting up the engine into more open components
  • removing the docker UI, SDK etc to keep them in the Docker org
  • clarifying that the project is not limited to the engine, but to the assembly of all the individual components of the Docker platform
  • open-source new tools & components which we currently use to assemble the Docker product, but could benefit the community
  • defining an open, community-centric governance inspired by the Fedora project (a very successful example of balancing the needs of the community with the constraints of the primary corporate sponsor)

Legal

Brought to you courtesy of our legal counsel. For more context, please see the NOTICE document in this repo.

Use and transfer of Moby may be subject to certain restrictions by the United States and other governments.

It is your responsibility to ensure that your use and/or transfer does not violate applicable laws.

For more information, please see https://www.bis.doc.gov

Licensing

Moby is licensed under the Apache License, Version 2.0. See LICENSE for the full license text.