Need advice about which tool to choose?Ask the StackShare community!

Docker

174.5K
140.2K
+ 1
3.9K
Supervisord

116
111
+ 1
0
Add tool

Docker vs Supervisord: What are the differences?

  1. 1. Image vs Process management: Docker is primarily used for packaging applications into lightweight, portable containers known as Docker images. These images contain everything needed to run an application, including the code, runtime, system tools, and libraries. On the other hand, Supervisord is a process manager that helps in controlling and monitoring multiple processes within a single OS instance. It ensures that specified processes are running and provides a mechanism to start, stop, and restart them.

  2. 2. Isolation vs Process control: Docker provides containerization, which offers significant isolation between different applications or services running on the same host. Each Docker container runs separately and has its own isolated resources, such as filesystem, network stack, and process space. Conversely, Supervisord does not provide isolation between processes. It is primarily focused on process control, helping to manage and control individual processes on a single OS instance.

  3. 3. Scalability: Docker offers a scalable solution by allowing the deployment of multiple containers across different hosts, forming a Docker swarm or Kubernetes cluster. This enables horizontal scaling of applications, as containers can be easily replicated and distributed across multiple machines. On the other hand, Supervisord is not designed for managing large-scale deployments and is more suited for managing processes within a single host.

  4. 4. Application Packaging: Docker is widely used for application packaging and distribution. It allows developers to build container images containing all the dependencies and configurations required for an application to run consistently in any environment. Supervisord, on the other hand, does not provide a packaging mechanism and requires manual configuration on each host where it is used.

  5. 5. Portability: Docker provides a high level of portability, allowing containers to run on any host that has Docker installed, regardless of the underlying operating system. This is achieved through the use of containerization technologies such as namespaces and control groups. Supervisord, being primarily focused on process management within a single host, does not offer the same level of portability as Docker.

  6. 6. Ecosystem and Community: Docker has a large and active community, with extensive documentation, tutorials, and a wide range of pre-built Docker images available in the Docker Hub. This makes it easier for developers to find solutions and troubleshoot issues. On the other hand, Supervisord does not have as large of a community or ecosystem, which may make it more challenging to find resources or support.

In Summary, Docker provides image-based isolation, scalability, packaging, portability, and a vibrant community, while Supervisord focuses on process control within a single host.

Decisions about Docker and Supervisord
Florian Sager
IT DevOp at Agitos GmbH · | 3 upvotes · 453.6K views
Chose
LXDLXD
over
DockerDocker

lxd/lxc and Docker aren't congruent so this comparison needs a more detailed look; but in short I can say: the lxd-integrated administration of storage including zfs with its snapshot capabilities as well as the system container (multi-process) approach of lxc vs. the limited single-process container approach of Docker is the main reason I chose lxd over Docker.

See more
Manage your open source components, licenses, and vulnerabilities
Learn More
Pros of Docker
Pros of Supervisord
  • 823
    Rapid integration and build up
  • 692
    Isolation
  • 521
    Open source
  • 505
    Testa­bil­i­ty and re­pro­ducibil­i­ty
  • 460
    Lightweight
  • 218
    Standardization
  • 185
    Scalable
  • 106
    Upgrading / down­grad­ing / ap­pli­ca­tion versions
  • 88
    Security
  • 85
    Private paas environments
  • 34
    Portability
  • 26
    Limit resource usage
  • 17
    Game changer
  • 16
    I love the way docker has changed virtualization
  • 14
    Fast
  • 12
    Concurrency
  • 8
    Docker's Compose tools
  • 6
    Fast and Portable
  • 6
    Easy setup
  • 5
    Because its fun
  • 4
    Makes shipping to production very simple
  • 3
    It's dope
  • 3
    Highly useful
  • 2
    Does a nice job hogging memory
  • 2
    Open source and highly configurable
  • 2
    Simplicity, isolation, resource effective
  • 2
    MacOS support FAKE
  • 2
    Its cool
  • 2
    Docker hub for the FTW
  • 2
    HIgh Throughput
  • 2
    Very easy to setup integrate and build
  • 2
    Package the environment with the application
  • 2
    Super
  • 0
    Asdfd
    Be the first to leave a pro

    Sign up to add or upvote prosMake informed product decisions

    Cons of Docker
    Cons of Supervisord
    • 8
      New versions == broken features
    • 6
      Unreliable networking
    • 6
      Documentation not always in sync
    • 4
      Moves quickly
    • 3
      Not Secure
      Be the first to leave a con

      Sign up to add or upvote consMake informed product decisions

      - No public GitHub repository available -

      What is Docker?

      The Docker Platform is the industry-leading container platform for continuous, high-velocity innovation, enabling organizations to seamlessly build and share any application — from legacy to what comes next — and securely run them anywhere

      What is Supervisord?

      It allows its users to monitor and control a number of processes on UNIX-like operating systems. It shares some of the same goals of programs like launchd, daemontools, and runit. it is meant to be used to control processes related to a project or a customer, and is meant to start like any other program at boot time.

      Need advice about which tool to choose?Ask the StackShare community!

      Jobs that mention Docker and Supervisord as a desired skillset
      Postman
      San Francisco, United States
      What companies use Docker?
      What companies use Supervisord?
      Manage your open source components, licenses, and vulnerabilities
      Learn More

      Sign up to get full access to all the companiesMake informed product decisions

      What tools integrate with Docker?
      What tools integrate with Supervisord?

      Sign up to get full access to all the tool integrationsMake informed product decisions

      Blog Posts

      PythonDockerKubernetes+7
      3
      1157
      PythonDockerKubernetes+14
      12
      2655
      Jul 9 2019 at 7:22PM

      Blue Medora

      DockerPostgreSQLNew Relic+8
      11
      2376
      DockerAmazon EC2Scala+8
      6
      2759
      GitHubDockerReact+17
      41
      37343
      What are some alternatives to Docker and Supervisord?
      LXC
      LXC is a userspace interface for the Linux kernel containment features. Through a powerful API and simple tools, it lets Linux users easily create and manage system or application containers.
      rkt
      Rocket is a cli for running App Containers. The goal of rocket is to be composable, secure, and fast.
      Kubernetes
      Kubernetes is an open source orchestration system for Docker containers. It handles scheduling onto nodes in a compute cluster and actively manages workloads to ensure that their state matches the users declared intentions.
      Cloud Foundry
      Cloud Foundry is an open platform as a service (PaaS) that provides a choice of clouds, developer frameworks, and application services. Cloud Foundry makes it faster and easier to build, test, deploy, and scale applications.
      Vagrant
      Vagrant provides the framework and configuration format to create and manage complete portable development environments. These development environments can live on your computer or in the cloud, and are portable between Windows, Mac OS X, and Linux.
      See all alternatives