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


+ 1

+ 1
Add tool

Docker vs Flocker: What are the differences?


Docker and Flocker are both technologies used in the field of containerization. While Docker focuses on creating and managing isolated containers, Flocker aims to enable the portability and data persistence of containers.

  1. Portability: Docker provides a highly portable environment by packaging applications and their dependencies into containers. These containers can be run on any system that supports Docker, making it easy to deploy applications across different environments. On the other hand, Flocker goes beyond container portability by allowing the movement of containers along with their associated data across different hosts or clusters.

  2. Data Management: Docker containers are designed to be stateless, meaning they do not store data persistently. Flocker, however, addresses this limitation by providing container-level data management. It allows data volumes to be moved and associated with containers, ensuring data persistence and availability even when containers are moved to different hosts.

  3. Scalability: Docker's focus is on container orchestration and management, making it highly scalable. It provides features like automatic scaling, load balancing, and service discovery. Flocker, on the other hand, primarily focuses on data management and portability, and does not offer built-in scalability features. However, Flocker can be used in conjunction with container orchestration platforms like Kubernetes to achieve scalability.

  4. Multi-Host Support: Docker primarily operates on a single host, with containers running independently on that host. Flocker, in contrast, supports multi-host deployments and allows the movement of containers and their associated data across different hosts or clusters. This enables distributed applications and data to be managed effectively.

  5. Data Consistency: Docker containers are typically isolated from each other and do not share a common data source. Flocker provides a mechanism for managing data consistency across containers by enabling the movement of data volumes along with the containers. This ensures that containers always have access to the latest and consistent data.

  6. Use Cases: Docker is widely used for application development, deployment, and scaling. It is commonly used by developers to package their applications and dependencies into containers for easy distribution and deployment. Flocker, on the other hand, is primarily used in scenarios where data persistence and portability are critical, such as database clusters and stateful applications.

In summary, Docker focuses on providing a highly portable and scalable environment for containerized applications, while Flocker emphasizes on data persistence and portability across hosts or clusters.

Decisions about Docker and Flocker
Florian Sager
IT DevOp at Agitos GmbH · | 3 upvotes · 424.4K views

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 Flocker
  • 823
    Rapid integration and build up
  • 691
  • 521
    Open source
  • 505
    Testa­bil­i­ty and re­pro­ducibil­i­ty
  • 460
  • 218
  • 185
  • 106
    Upgrading / down­grad­ing / ap­pli­ca­tion versions
  • 88
  • 85
    Private paas environments
  • 34
  • 26
    Limit resource usage
  • 17
    Game changer
  • 16
    I love the way docker has changed virtualization
  • 14
  • 12
  • 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
  • 0
  • 4
  • 3
    Easily manage Docker containers with Data
  • 2
    Easy setup
  • 2
    Great support from their team
  • 2
    Multi-host docker-compose support
  • 2
    Only requires docker

Sign up to add or upvote prosMake informed product decisions

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

    Flocker is a data volume manager and multi-host Docker cluster management tool. With it you can control your data using the same tools you use for your stateless applications. This means that you can run your databases, queues and key-value stores in Docker and move them around as easily as the rest of your app.

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

    What companies use Docker?
    What companies use Flocker?
    See which teams inside your own company are using Docker or Flocker.
    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 Flocker?

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

    Blog Posts

    Jul 9 2019 at 7:22PM

    Blue Medora

    DockerPostgreSQLNew Relic+8
    DockerAmazon EC2Scala+8
    What are some alternatives to Docker and Flocker?
    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.
    Rocket is a cli for running App Containers. The goal of rocket is to be composable, secure, and fast.
    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 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