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

Docker

169.8K
136.5K
+ 1
3.9K
Docker Machine

434
516
+ 1
12
Add tool

Docker vs Docker Machine: What are the differences?

Introduction

In this article, we will discuss the key differences between Docker and Docker Machine.

  1. Installation and Setup: Docker can be installed directly on a host operating system and is used for managing containers. On the other hand, Docker Machine is a separate tool that helps in the installation, configuration, and management of Docker on remote hosts or virtual machines.

  2. Multiple Host Management: Docker can only manage containers on the local host, while Docker Machine can manage containers on multiple remote hosts or virtual machines. This allows for easy scaling and distribution of containerized applications across different environments.

  3. Provisioning and Management of Hosts: Docker Machine automates the process of provisioning and managing hosts by creating and configuring virtual machines on various cloud providers or local hypervisors. Docker, on the other hand, focuses on container orchestration and management rather than host provisioning.

  4. Platform Support: Docker is available for a wide variety of operating systems, including Linux, macOS, and Windows. Docker Machine, however, has limited support and may not work seamlessly on all operating systems.

  5. Remote SSH Access: Docker Machine provides a convenient way to SSH into remote hosts and manage containers on them. Docker, on the other hand, does not offer this feature natively and requires additional configuration to access containers on remote hosts.

  6. Integration with Other Tools: Docker Machine integrates well with other tools in the Docker ecosystem, such as Docker Compose and Docker Swarm, allowing for easy management of multi-host container deployments. Docker, on the other hand, focuses on container management and orchestration within a single host environment.

In summary, Docker is primarily focused on local container management, while Docker Machine extends this functionality by enabling management of containers on remote hosts or virtual machines. Docker Machine also automates the process of provisioning and managing hosts, making it easier to scale and distribute containerized applications.

Decisions about Docker and Docker Machine
Florian Sager
IT DevOp at Agitos GmbH · | 3 upvotes · 415.2K 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
Get Advice from developers at your company using StackShare Enterprise. Sign up for StackShare Enterprise.
Learn More
Pros of Docker
Pros of Docker Machine
  • 823
    Rapid integration and build up
  • 691
    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
    Very easy to setup integrate and build
  • 2
    HIgh Throughput
  • 2
    Package the environment with the application
  • 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
    Super
  • 0
    Asdfd
  • 12
    Easy docker hosts management

Sign up to add or upvote prosMake informed product decisions

Cons of Docker
Cons of Docker Machine
  • 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 companies use Docker?
    What companies use Docker Machine?
    See which teams inside your own company are using Docker or Docker Machine.
    Sign up for StackShare EnterpriseLearn More

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

    What tools integrate with Docker?
    What tools integrate with Docker Machine?

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

    What are some alternatives to Docker and Docker Machine?
    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