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

Docker

176.7K
142K
+ 1
3.9K
Marathon

84
91
+ 1
5
Add tool

Docker vs Marathon: What are the differences?

Introduction: This Markdown code provides a comparison between Docker and Marathon, highlighting key differences between the two popular technologies used in the field of container orchestration.

  1. Containerization Technology: Docker is primarily a containerization technology that enables developers to package their applications and dependencies into a container that can run on any machine. On the other hand, Marathon is a container orchestration platform that helps manage a cluster of containers, providing features such as scaling, load balancing, and monitoring.

  2. Primary Use Case: Docker is widely used for developing, deploying, and running applications in isolated environments, making it easier to ship and run applications consistently across different environments. Meanwhile, Marathon is specifically designed for deploying and managing containerized applications at scale in production environments, offering features for high availability and fault tolerance.

  3. Scope of Control: Docker focuses on the development and runtime environment of individual containers, allowing developers to define the configuration, dependencies, and execution environment of their applications. In contrast, Marathon operates at a higher level, managing the deployment, scaling, and coordination of multiple containers across a cluster of machines, providing a centralized control plane for microservices architecture.

  4. Architecture and Design: Docker follows a client-server architecture where the Docker engine interacts with the containers running on the host machine, while Marathon is based on a distributed system architecture that consists of multiple components like the Marathon scheduler, Mesos master, and Mesos agents to manage containerized applications across a cluster of machines.

  5. Scaling and Resource Management: Docker provides basic tools for scaling containers within a single host machine but lacks the advanced functionalities for orchestrating containers across multiple machines in a distributed environment. On the other hand, Marathon leverages the Mesos cluster manager to handle resource allocation, scheduling, and scaling of containers dynamically based on resource availability and workload requirements.

  6. Community and Ecosystem: Docker has a large and diverse community of developers, contributors, and third-party tools that support various use cases and integrations with other technologies, making it a popular choice for containerization. In comparison, Marathon is primarily used in conjunction with Mesos for large-scale container orchestration, benefiting from the tight integration with Mesos ecosystem tools and frameworks like Apache Spark and Hadoop.

In Summary, the key differences between Docker and Marathon lie in their primary focus on containerization and orchestration, scope of control, architecture, scaling capabilities, and community support, catering to different use cases in the container ecosystem.

Decisions about Docker and Marathon
Florian Sager
IT DevOp at Agitos GmbH · | 3 upvotes · 469.4K 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 Marathon
  • 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
    Easy setup
  • 6
    Fast and Portable
  • 5
    Because its fun
  • 4
    Makes shipping to production very simple
  • 3
    Highly useful
  • 3
    It's dope
  • 2
    Package the environment with the application
  • 2
    Super
  • 2
    Open source and highly configurable
  • 2
    Simplicity, isolation, resource effective
  • 2
    MacOS support FAKE
  • 2
    Its cool
  • 2
    Does a nice job hogging memory
  • 2
    Docker hub for the FTW
  • 2
    HIgh Throughput
  • 2
    Very easy to setup integrate and build
  • 0
    Asdfd
  • 1
    High Availability
  • 1
    Powerful UI
  • 1
    Service Discovery
  • 1
    Load Balancing
  • 1
    Health Checks

Sign up to add or upvote prosMake informed product decisions

Cons of Docker
Cons of Marathon
  • 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

    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 Marathon?

    Marathon is an Apache Mesos framework for container orchestration. Marathon provides a REST API for starting, stopping, and scaling applications. Marathon is written in Scala and can run in highly-available mode by running multiple copies. The state of running tasks gets stored in the Mesos state abstraction.

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

    What companies use Docker?
    What companies use Marathon?
    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 Marathon?

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

    Blog Posts

    PythonDockerKubernetes+7
    3
    1196
    PythonDockerKubernetes+14
    12
    2692
    Jul 9 2019 at 7:22PM

    Blue Medora

    DockerPostgreSQLNew Relic+8
    11
    2415
    DockerAmazon EC2Scala+8
    6
    2806
    GitHubDockerReact+17
    42
    37974
    What are some alternatives to Docker and Marathon?
    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