This document discusses providing persistent, stateful services with Docker clusters. It covers using Docker volumes and namespaces to manage storage, implementing "storage engines" to back up volumes for different clouds, and using supercontainers to control the host and peer containers. It summarizes setting up stateful Docker clusters using Mesos/Marathon and scheduling a supercontainer volume service for each host to support backups across multiple storage engines.
DockerCon EU 2015: Docker and PCI-DSS - Lessons learned in a security sensiti...Docker, Inc.
This document summarizes Udo Seidel's presentation on Docker and PCI compliance at Amadeus. It discusses how Amadeus implemented Docker while meeting PCI requirements for security, access controls, logging, and more. Some key lessons included reusing existing security tools, having a dedicated security architect role, and emphasizing communication between security, operations and development teams. Docker provided benefits like abstraction, ease of use and mobility while allowing Amadeus to port more applications over time in compliance with PCI standards.
How to be successful running Docker in ProductionDocker, Inc.
John’s presentation will cover his lessons learned from running Docker in Production @ SalesforceIQ. Learn how to scale your registry using AWS and S3. Should you use Device Mapper or AUFS? Why run Swarm, Mesos, Kubernetes, or neither. Finally, know how persistent storage (Kafka, Cassandra, or SQL) can be run successfully with Docker in Production
His team focuses on Docker based solutions to power their SaaS infrastructure and developer operations.
The document summarizes a talk given at the Linux Plumbers Conference 2014 about Docker and the Linux kernel. It discusses what Docker is, how it uses kernel features like namespaces and cgroups, its different storage drivers and their issues, kernel requirements, and how Docker and kernel developers can collaborate to test and improve the kernel and Docker software.
Docker Online Meetup: Infrakit update and Q&ADocker, Inc.
While working on Docker for AWS and Azure, we realized the need for a standard way to create and manage infrastructure state that was portable across any type of infrastructure, from different cloud providers to on-prem. One challenge is that each vendor has differentiated IP invested in how they handle certain aspects of their cloud infrastructure. It is not enough to just provision five servers; what IT ops teams need is a simple and consistent way to declare the number of servers, what size they should be, and what sort of base software configuration is required. And in the case of server failures (especially unplanned), that sudden change needs to be reconciled against the desired state to ensure that any required servers are re-provisioned with the necessary configuration. We started InfraKit to solves these problems and to provide the ability to create a self healing infrastructure for distributed systems.
This document discusses containerization and the Docker ecosystem. It provides a brief history of containerization technologies and an overview of Docker components like Docker Engine, Docker Hub, and Docker Inc. It also discusses developing with Docker through concepts like Dockerfiles, images, and Fig for running multi-container apps. More advanced topics covered include linking containers, volumes, Docker Machine for provisioning, and clustering with Swarm and Kubernetes.
This document summarizes Docker security features as of release 1.12. It discusses key security modules like namespaces, cgroups, capabilities, seccomp, AppArmor/SELinux that provide access control and isolation in Docker containers. It also covers multi-tenant security, image signing, TLS for daemon access, and best practices like using official images and regular updates.
This document provides an overview of networking in the Docker platform. It discusses the default Docker networks of none, host and bridge. It also covers user-defined networks like bridge and overlay networks. The key challenges with applications are that they are multi-tiered, dependent on other applications and third party APIs, with components residing across different containers. Docker networking aims to address these challenges.
Docker Birthday #3 - Intro to Docker SlidesDocker, Inc.
High level overview of Docker + Birthday #3 overview (app and challenge portion)!
Learn more about Docker Birthday #3 celebrations here: https://www.docker.com/community/docker-birthday-3
DockerCon EU 2015: Docker and PCI-DSS - Lessons learned in a security sensiti...Docker, Inc.
This document summarizes Udo Seidel's presentation on Docker and PCI compliance at Amadeus. It discusses how Amadeus implemented Docker while meeting PCI requirements for security, access controls, logging, and more. Some key lessons included reusing existing security tools, having a dedicated security architect role, and emphasizing communication between security, operations and development teams. Docker provided benefits like abstraction, ease of use and mobility while allowing Amadeus to port more applications over time in compliance with PCI standards.
How to be successful running Docker in ProductionDocker, Inc.
John’s presentation will cover his lessons learned from running Docker in Production @ SalesforceIQ. Learn how to scale your registry using AWS and S3. Should you use Device Mapper or AUFS? Why run Swarm, Mesos, Kubernetes, or neither. Finally, know how persistent storage (Kafka, Cassandra, or SQL) can be run successfully with Docker in Production
His team focuses on Docker based solutions to power their SaaS infrastructure and developer operations.
The document summarizes a talk given at the Linux Plumbers Conference 2014 about Docker and the Linux kernel. It discusses what Docker is, how it uses kernel features like namespaces and cgroups, its different storage drivers and their issues, kernel requirements, and how Docker and kernel developers can collaborate to test and improve the kernel and Docker software.
Docker Online Meetup: Infrakit update and Q&ADocker, Inc.
While working on Docker for AWS and Azure, we realized the need for a standard way to create and manage infrastructure state that was portable across any type of infrastructure, from different cloud providers to on-prem. One challenge is that each vendor has differentiated IP invested in how they handle certain aspects of their cloud infrastructure. It is not enough to just provision five servers; what IT ops teams need is a simple and consistent way to declare the number of servers, what size they should be, and what sort of base software configuration is required. And in the case of server failures (especially unplanned), that sudden change needs to be reconciled against the desired state to ensure that any required servers are re-provisioned with the necessary configuration. We started InfraKit to solves these problems and to provide the ability to create a self healing infrastructure for distributed systems.
This document discusses containerization and the Docker ecosystem. It provides a brief history of containerization technologies and an overview of Docker components like Docker Engine, Docker Hub, and Docker Inc. It also discusses developing with Docker through concepts like Dockerfiles, images, and Fig for running multi-container apps. More advanced topics covered include linking containers, volumes, Docker Machine for provisioning, and clustering with Swarm and Kubernetes.
This document summarizes Docker security features as of release 1.12. It discusses key security modules like namespaces, cgroups, capabilities, seccomp, AppArmor/SELinux that provide access control and isolation in Docker containers. It also covers multi-tenant security, image signing, TLS for daemon access, and best practices like using official images and regular updates.
This document provides an overview of networking in the Docker platform. It discusses the default Docker networks of none, host and bridge. It also covers user-defined networks like bridge and overlay networks. The key challenges with applications are that they are multi-tiered, dependent on other applications and third party APIs, with components residing across different containers. Docker networking aims to address these challenges.
Docker Birthday #3 - Intro to Docker SlidesDocker, Inc.
High level overview of Docker + Birthday #3 overview (app and challenge portion)!
Learn more about Docker Birthday #3 celebrations here: https://www.docker.com/community/docker-birthday-3
The ABC of Docker: The Absolute Best Compendium of DockerAniekan Akpaffiong
Containers provide a lightweight virtualization approach compared to virtual machines. Containers share the host operating system kernel and isolate applications at the process level, while virtual machines run a full guest operating system and require hypervisor software. Containers have a smaller footprint and overhead than virtual machines since they share resources more efficiently. Both containers and virtual machines provide portability and isolation benefits for applications.
This document discusses Docker and how it powers the Eclipse Che IDE platform. It provides an overview of Docker concepts like containers, images, and orchestration. It also demonstrates how to build a sample Spring Boot app as a Docker image and run it as a container. Finally, it outlines the agenda for the CheConf2016 conference, including sessions on deploying Che on OpenShift and building an IoT IDE with Che.
This presentation is from the 2016 Enterprise Roadshow series in North America and Europe. This presentation explains the Docker enterprise solution including Containers as a Service workflows powered by Docker Datacenter and the integration with HPE to deliver a container platform on hybrid cloud infrastructure.
Learn more: www.docker.com/enterprise
Docker allows building portable software that can run anywhere by packaging an application and its dependencies in a standardized unit called a container. Kubernetes is an open-source system for automating deployment, scaling, and management of containerized applications. It groups containers that make up an application into logical units for easy management and discovery. Kubernetes can replicate containers, provide load balancing, coordinate updates between containers, and ensure availability. Defining applications as Kubernetes resources allows them to be deployed and updated easily across a cluster.
Docker 1.11 Meetup: Containerd and runc, by Arnaud Porterie and Michael Crosby Michelle Antebi
In this talk, Michal Crosby will present on runC and Containerd, the internals and how they work together to start and manage containers in Docker. Afterwards, Arnaud Porterie will touch on about what was shipped in 1.11 and how it will enable some of the things we are working on for 1.12.
Lightweight virtualization uses container technology to isolate processes and their resources through namespaces and cgroups. Docker is a container management system that provides lightweight virtualization. Baidu chose Docker for its BAE platform because containers provide better isolation than sandboxes with fewer restrictions and lower costs. Docker meets BAE's needs but was improved with additional security and resource constraints for its PAAS platform.
The document discusses Docker's platform and ecosystem. It describes Docker's mission to build tools for mass innovation by providing a software layer to program the internet. It outlines key components of Docker including Docker Engine, Swarm for clustering multiple Docker hosts, Compose for defining and running multi-container applications, and Docker Hub for sharing images. It also discusses the Linux container ecosystem underpinning Docker and roadmaps for continued development.
This document provides an introduction to Docker including Docker vocabulary, architecture, file systems, networking, volumes, registry services like Docker Hub, and clustering technologies like Docker Swarm, Kubernetes and Mesos. It also covers setting up a local Docker environment, building Docker images with Dockerfiles, running containers, and deploying containers on AWS EC2 Container Service.
It is the understanding of docker and how it was useful in day-to-day tasks, some basic difference between old and new. At last my learnings and mistake while doing it all.
Introduction to dockers and kubernetes. Learn how this helps you to build scalable and portable applications with cloud. It introduces the basic concepts of dockers, its differences with virtualization, then explain the need for orchestration and do some hands-on experiments with dockers
Containers vs. VMs: It's All About the Apps!Steve Wilson
There has been much hype about whether Containers will replace Virtual Machines for use in Cloud architectures. We’ll look at the strengths of each technology and how they apply in real-world usage. By taking a top-down (Application-first) approach to requirements analysis, versus a bottoms-up (Infrastructure-first) approach, we can see how unique architectures will emerge that can balance the needs of Developers, DevOps and corporate IT.
This document discusses Docker, including what it is, why it is used, and how it works. Docker provides lightweight software containers that package code and its dependencies so the application runs quickly and consistently on any computing infrastructure. It allows applications to be easily deployed and migrated across computing environments. The document outlines how Docker addresses issues like managing multiple software stacks and hardware environments by creating portable containers that can be run anywhere without reconfiguration. Examples of using Docker for microservices, DevOps, and data centers are also provided.
Docker for the new Era: Introducing Docker,its components and toolsRamit Surana
This document provides an overview of Docker, including:
- Docker enables building applications from components and eliminates friction between development, QA and production environments.
- Other container options include LXC, LXD and OpenVZ, but Docker has gained popularity for its ease of use.
- Docker components include images, containers, registries, and more.
- Docker Hub and Quay.io are popular registries for finding and sharing Docker images.
- Docker Swarm and Docker Compose allow orchestrating multiple Docker containers.
The document discusses the importance of diversity and inclusion in the workplace. It notes that a diverse workforce leads to better problem solving and decision making by bringing in a variety of perspectives. The document recommends that companies implement diversity training for all employees and promote a culture of acceptance across differences to reap the benefits of diversity.
If you're not familiar with Docker yet, here is your chance to catch up: a quick overview of the Open Source Docker Engine, and its associated services delivered through the Docker Hub. It also includes Jérôme will also discuss the new features of Docker 1.0, and briefly explain how you can run and maintain Docker on Azure. In addition, an Azure team member will demonstrate how deploy docker to Azure. The presentation will be followed by a Q&A session!
This document provides an overview of Docker and Kubernetes (K8S). It defines Docker as an open platform for developing, shipping and running containerized applications. Key Docker features include isolation, low overhead and cross-cloud support. Kubernetes is introduced as an open-source tool for automating deployment, scaling, and management of containerized applications. It operates at the container level. The document then covers K8S architecture, including components like Pods, Deployments, Services and Nodes, and how K8S orchestrates containers across clusters.
Building Distributed Systems without Docker, Using Docker Plumbing Projects -...Patrick Chanezon
Docker provides an integrated and opinionated toolset to build, ship and run distributed applications. Over the past year, the Docker codebase has been refactored extensively to extract infrastructure plumbing components that can be used independently, following the UNIX philosophy of small tools doing one thing well: runC, containerd, swarmkit, hyperkit, vpnkit, datakit and the newly introduced InfraKit.
This talk will give an overview of these tools and how you can use them to build your own distributed systems without Docker.
Patrick Chanezon & David Chung, Docker & Phil Estes, IBM
This document summarizes a presentation about using Docker for development. It discusses installing Docker, running a "Hello World" Docker image, building a custom Python Docker image, and composing a more complex Docker application with PHP, MySQL, and Apache. The benefits of Docker like lightweight containers, easy environment setup, and scalability are highlighted. Some challenges with scaling and orchestration are also mentioned, along with solutions like Docker Swarm and Kubernetes.
DockerCon EU 2015: Cultural Revolution - How to Mange the Change Docker BringsDocker, Inc.
The document discusses how organizations can manage the cultural changes that adopting Docker brings. It outlines four choices organizations face: whether to adopt Docker as a skunkworks project or enterprise-wide, whether to containerize monolithic or microservice applications, whether to use standard tools or develop proprietary solutions, and whether to adopt Docker openly or secretly. The document argues that adopting Docker openly as an enterprise standard can facilitate a DevOps culture, improve software quality, and increase hardware efficiency, ultimately benefiting the organization.
Docker for Ops: Docker Storage and Volumes Deep Dive and Considerations by Br...Docker, Inc.
This document discusses storage options for Docker containers and images. It introduces different storage drivers that can be used, such as AUFS, BTRFS, DeviceMapper, Overlay, and Overlay2. It also discusses using persistent storage for containers through creating named Docker volumes stored on NFS, BTRFS, or Gluster file systems. This allows stateful applications to have their data persisted even if containers are removed.
The ABC of Docker: The Absolute Best Compendium of DockerAniekan Akpaffiong
Containers provide a lightweight virtualization approach compared to virtual machines. Containers share the host operating system kernel and isolate applications at the process level, while virtual machines run a full guest operating system and require hypervisor software. Containers have a smaller footprint and overhead than virtual machines since they share resources more efficiently. Both containers and virtual machines provide portability and isolation benefits for applications.
This document discusses Docker and how it powers the Eclipse Che IDE platform. It provides an overview of Docker concepts like containers, images, and orchestration. It also demonstrates how to build a sample Spring Boot app as a Docker image and run it as a container. Finally, it outlines the agenda for the CheConf2016 conference, including sessions on deploying Che on OpenShift and building an IoT IDE with Che.
This presentation is from the 2016 Enterprise Roadshow series in North America and Europe. This presentation explains the Docker enterprise solution including Containers as a Service workflows powered by Docker Datacenter and the integration with HPE to deliver a container platform on hybrid cloud infrastructure.
Learn more: www.docker.com/enterprise
Docker allows building portable software that can run anywhere by packaging an application and its dependencies in a standardized unit called a container. Kubernetes is an open-source system for automating deployment, scaling, and management of containerized applications. It groups containers that make up an application into logical units for easy management and discovery. Kubernetes can replicate containers, provide load balancing, coordinate updates between containers, and ensure availability. Defining applications as Kubernetes resources allows them to be deployed and updated easily across a cluster.
Docker 1.11 Meetup: Containerd and runc, by Arnaud Porterie and Michael Crosby Michelle Antebi
In this talk, Michal Crosby will present on runC and Containerd, the internals and how they work together to start and manage containers in Docker. Afterwards, Arnaud Porterie will touch on about what was shipped in 1.11 and how it will enable some of the things we are working on for 1.12.
Lightweight virtualization uses container technology to isolate processes and their resources through namespaces and cgroups. Docker is a container management system that provides lightweight virtualization. Baidu chose Docker for its BAE platform because containers provide better isolation than sandboxes with fewer restrictions and lower costs. Docker meets BAE's needs but was improved with additional security and resource constraints for its PAAS platform.
The document discusses Docker's platform and ecosystem. It describes Docker's mission to build tools for mass innovation by providing a software layer to program the internet. It outlines key components of Docker including Docker Engine, Swarm for clustering multiple Docker hosts, Compose for defining and running multi-container applications, and Docker Hub for sharing images. It also discusses the Linux container ecosystem underpinning Docker and roadmaps for continued development.
This document provides an introduction to Docker including Docker vocabulary, architecture, file systems, networking, volumes, registry services like Docker Hub, and clustering technologies like Docker Swarm, Kubernetes and Mesos. It also covers setting up a local Docker environment, building Docker images with Dockerfiles, running containers, and deploying containers on AWS EC2 Container Service.
It is the understanding of docker and how it was useful in day-to-day tasks, some basic difference between old and new. At last my learnings and mistake while doing it all.
Introduction to dockers and kubernetes. Learn how this helps you to build scalable and portable applications with cloud. It introduces the basic concepts of dockers, its differences with virtualization, then explain the need for orchestration and do some hands-on experiments with dockers
Containers vs. VMs: It's All About the Apps!Steve Wilson
There has been much hype about whether Containers will replace Virtual Machines for use in Cloud architectures. We’ll look at the strengths of each technology and how they apply in real-world usage. By taking a top-down (Application-first) approach to requirements analysis, versus a bottoms-up (Infrastructure-first) approach, we can see how unique architectures will emerge that can balance the needs of Developers, DevOps and corporate IT.
This document discusses Docker, including what it is, why it is used, and how it works. Docker provides lightweight software containers that package code and its dependencies so the application runs quickly and consistently on any computing infrastructure. It allows applications to be easily deployed and migrated across computing environments. The document outlines how Docker addresses issues like managing multiple software stacks and hardware environments by creating portable containers that can be run anywhere without reconfiguration. Examples of using Docker for microservices, DevOps, and data centers are also provided.
Docker for the new Era: Introducing Docker,its components and toolsRamit Surana
This document provides an overview of Docker, including:
- Docker enables building applications from components and eliminates friction between development, QA and production environments.
- Other container options include LXC, LXD and OpenVZ, but Docker has gained popularity for its ease of use.
- Docker components include images, containers, registries, and more.
- Docker Hub and Quay.io are popular registries for finding and sharing Docker images.
- Docker Swarm and Docker Compose allow orchestrating multiple Docker containers.
The document discusses the importance of diversity and inclusion in the workplace. It notes that a diverse workforce leads to better problem solving and decision making by bringing in a variety of perspectives. The document recommends that companies implement diversity training for all employees and promote a culture of acceptance across differences to reap the benefits of diversity.
If you're not familiar with Docker yet, here is your chance to catch up: a quick overview of the Open Source Docker Engine, and its associated services delivered through the Docker Hub. It also includes Jérôme will also discuss the new features of Docker 1.0, and briefly explain how you can run and maintain Docker on Azure. In addition, an Azure team member will demonstrate how deploy docker to Azure. The presentation will be followed by a Q&A session!
This document provides an overview of Docker and Kubernetes (K8S). It defines Docker as an open platform for developing, shipping and running containerized applications. Key Docker features include isolation, low overhead and cross-cloud support. Kubernetes is introduced as an open-source tool for automating deployment, scaling, and management of containerized applications. It operates at the container level. The document then covers K8S architecture, including components like Pods, Deployments, Services and Nodes, and how K8S orchestrates containers across clusters.
Building Distributed Systems without Docker, Using Docker Plumbing Projects -...Patrick Chanezon
Docker provides an integrated and opinionated toolset to build, ship and run distributed applications. Over the past year, the Docker codebase has been refactored extensively to extract infrastructure plumbing components that can be used independently, following the UNIX philosophy of small tools doing one thing well: runC, containerd, swarmkit, hyperkit, vpnkit, datakit and the newly introduced InfraKit.
This talk will give an overview of these tools and how you can use them to build your own distributed systems without Docker.
Patrick Chanezon & David Chung, Docker & Phil Estes, IBM
This document summarizes a presentation about using Docker for development. It discusses installing Docker, running a "Hello World" Docker image, building a custom Python Docker image, and composing a more complex Docker application with PHP, MySQL, and Apache. The benefits of Docker like lightweight containers, easy environment setup, and scalability are highlighted. Some challenges with scaling and orchestration are also mentioned, along with solutions like Docker Swarm and Kubernetes.
DockerCon EU 2015: Cultural Revolution - How to Mange the Change Docker BringsDocker, Inc.
The document discusses how organizations can manage the cultural changes that adopting Docker brings. It outlines four choices organizations face: whether to adopt Docker as a skunkworks project or enterprise-wide, whether to containerize monolithic or microservice applications, whether to use standard tools or develop proprietary solutions, and whether to adopt Docker openly or secretly. The document argues that adopting Docker openly as an enterprise standard can facilitate a DevOps culture, improve software quality, and increase hardware efficiency, ultimately benefiting the organization.
Docker for Ops: Docker Storage and Volumes Deep Dive and Considerations by Br...Docker, Inc.
This document discusses storage options for Docker containers and images. It introduces different storage drivers that can be used, such as AUFS, BTRFS, DeviceMapper, Overlay, and Overlay2. It also discusses using persistent storage for containers through creating named Docker volumes stored on NFS, BTRFS, or Gluster file systems. This allows stateful applications to have their data persisted even if containers are removed.
Persistent Data Storage for Docker Containers by Andre MorugaDocker, Inc.
This talk explores the best approaches to integrating storage with application containers such as Docker. The statelessness of application containers presents challenges when it comes to the use and management of storage resources in a dynamic and multi-server environment. This talk particularly explores the ways in which Virtuozzo Storage offer a compelling solution to these challenges.
Docker 1.11 Meetup: Networking ShowcaseDocker, Inc.
Docker networking was introduced in Docker 1.9.0 and has continued to be improved upon and expanded. Key features introduced include support for multiple micro-segmented networks, built-in multihost networking using VXLAN, pluggable network plugins, and integration with Docker Swarm and Docker Compose. Later versions added additional capabilities like service discovery using embedded DNS, network load balancing, and experimental Macvlan and IPVlan drivers to connect containers to specific VLANs. Docker networking allows containers to be connected to different network types including default bridge networks, user-defined bridge networks, and overlay networks spanning multiple Docker hosts.
Presented by Brian Christner, Cloud Advocate, Swisscom AG
Do you know the performance of your containers or Docker Hosts? I will show you how to get up and running quickly with 2 different Open Source Docker Monitoring solutions. We will quickly cover Docker Stats as the basis and discover how Google cAdvisor gathers metrics for our 2 solutions. We will then build upon this basis to build a Docker Monitoring solution with cAdvisor+InfluxDB+Grafana and then cAdvisor+Prometheus and create dashboards based on the gathered monitoring metrics with Grafna and Prometheus.
DockerCon EU 2015: The Missing Piece: when Docker networking unleashing soft ...Docker, Inc.
Presented by Adrien Blind, DevOps Coach, Socîeté Générale and Laurent Grangeau, Solutions Architect, Finaxys
Docker now provides several building blocks, combining engine, clustering, and componentization, while the new networking and service features enable many new usecases such as multi-tenancy.
In this session, you will first discover the new experimental networking and service features expected soon, and then drift rapidly to software architecture, explaining how a complete Docker stack unleashes microservices paradigms.
A New Centralized Volume Storage Solution for Docker and Container Cloud by W...Docker, Inc.
Elara is a Docker volume plugin that provides a distributed volume management tool and connection between containers and shared storage providers. It supports advanced volume operations like snapshots, backups, migration, IOPS, disk quotas and extending volumes. Elara uses a key-value storage as a database to store node status remotely. It focuses on shared storage and supports multiple backend drivers like NFS, Cinder and filesystem/block devices.
Docker Meetup: Docker Networking 1.11 with Madhu VenugopalDocker, Inc.
In this talk, Madhu Venugopal will present Docker Networking & Service Discovery features shipped in 1.11 and new Experimental VLAN network drivers introduced in 1.11.
This document provides an overview and agenda for a Docker networking deep dive presentation. The presentation covers key concepts in Docker networking including libnetwork, the Container Networking Model (CNM), multi-host networking capabilities, service discovery, load balancing, and new features in Docker 1.12 like routing mesh and secured control/data planes. The agenda demonstrates Docker networking use cases like default bridge networks, user-defined bridge networks, and overlay networks. It also covers networking drivers, Docker 1.12 swarm mode networking functionality, and how concepts like routing mesh and load balancing work.
Docker has created enormous buzz in the last few years. Docker is a open-source software containerization platform. It provides an ability to package software into standardised units on Docker for software development. In this hands-on introductory session, I introduce the concept of containers, provide an overview of Docker, and take the participants through the steps for installing Docker. The main session involves using Docker CLI (Command Line Interface) - all the concepts such as images, managing containers, and getting useful work done is illustrated step-by-step by running commands.
This document provides an introduction to Docker. It discusses why Docker is useful for isolation, being lightweight, simplicity, workflow, and community. It describes the Docker engine, daemon, and CLI. It explains how Docker Hub provides image storage and automated builds. It outlines the Docker installation process and common workflows like finding images, pulling, running, stopping, and removing containers and images. It promotes Docker for building local images and using host volumes.
Using SaltStack to orchestrate microservices in application containers at Sal...Love Nyberg
More and more applications are being built or re-built with a micro-service architecture. Application containers are great working blocks to quickly and easily get a micro-service system up and running. Saltstack is then a perfect match to scale such a system. This talk will dive into how Saltstack can be used to scale a micro-service system like Docker.
This document discusses baremetal provisioning using OpenStack. It describes how the baremetal driver allows OpenStack to provision physical servers similarly to virtual machines. The driver exposes physical servers to OpenStack as hypervisors. It outlines the bootstrap and deployment process, which aims to improve performance by distributing work. Future plans include enhancing network and storage support, as well as auto-discovery, orchestration and testing baremetal on OpenStack. Mock hardware with VMs can be used to test baremetal provisioning without physical servers.
Orchestrate Event-Driven Infrastructure with SaltStackLove Nyberg
Saltstack is by it's design a event driven configuration management tool. In talk will do a deep dive into salt reactor, runners and beacon systems. Talk will also cover a demo of event driven application releases process.
Presented at the CoreOS / ClusterHQ meetup in San Francisco
Stephen Nguyen a Developer Evangelist for ClusterHQ reviews how volumes work and overviews the benefits of allowing Flocker to orchestrate your Volumes. (video coming soon)
Keynote version, added benefit of step by step animations for the more complex diagram and speaker's notes. (https://drive.google.com/file/d/0B7ZrB_ueOcMqSDY0Y3hOMmZxU00/view?usp=sharing_
O documento descreve as funcionalidades e configuração do Docker Swarm e Swarmkit para gerenciamento de clusters de containers Docker. Ele explica como iniciar um cluster Swarm, adicionar nós trabalhadores e gerentes, criar serviços e redes overlay, e testar uma implantação de WordPress e MySQL rodando em containers.
The document provides an overview of Das U-Boot, a universal boot loader used to load operating systems and applications into memory on embedded systems. It discusses U-Boot's features such as its command line interface, ability to load images from different sources, and support for various architectures and boards. It also covers compiling and configuring U-Boot, as well as its basic command set and image support capabilities.
Why everyone is excited about Docker (and you should too...) - Carlo Bonamic...Codemotion
In less than two years Docker went from first line of code to major Open Source project with contributions from all the big names in IT. Everyone is excited, but what's in for me - as a Dev or Ops? In short, Docker makes creating Development, Test and even Production environments an order of magnitude simpler, faster and completely portable across both local and cloud infrastructure. We will start from Docker main concepts: how to create a Linux Container from base images, run your application in it, and version your runtimes as you would with source code, and finish with a concrete example.
This document discusses Docker, an open source project that automates the deployment of applications inside software containers. It begins by describing common problems in application deployment and how virtual machines address some issues but introduce overhead. It then summarizes the history and rapid growth of Docker since its launch in 2013. The rest of the document dives into technical aspects of Docker like how images and containers work, comparisons to virtual machines, security considerations, the Docker workflow, and how Docker relates to DevOps and continuous delivery practices.
Using Docker with OpenStack - Hands On!Adrian Otto
This document outlines an agenda for a hands-on Docker workshop. It includes 3 lessons and 3 hands-on labs. Lesson 1 provides an introduction to Docker concepts like Docker images, containers, and Dockerfiles. Lab 1 guides students on using docker-machine to spin up containers and get shells on Docker hosts. Lesson 2 covers writing Dockerfiles. Lab 2 involves writing Dockerfiles. Lesson 3 discusses linking and networking containers, while Lab 3 demonstrates linking containers on the same and different hosts.
Drupalcamp es 2013 drupal with lxc docker and vagrant Ricardo Amaro
This document discusses using containers like LXC and Docker to automate Drupal deployments. It begins with an introduction to the speaker and overview of virtual machines versus containers. The speaker then demonstrates using LXC containers on Ubuntu with tools like Vagrant and Puppet for configuration management. Docker is presented as an improvement allowing developers to package applications and dependencies into portable containers that can be run anywhere without reconfiguration.
ExpoQA 2017 Using docker to build and test in your laptop and JenkinsElasTest Project
This document discusses using Docker to build and test applications in laptops and Jenkins. It begins with an introduction to the author and their background/expertise. It then covers virtualization and containers, including VirtualBox, Vagrant, and Docker. The main concepts of Docker like images, containers, registries are defined. Hands-on examples are provided for running basic Docker commands, managing the lifecycle of containers, exposing network services, and managing Docker images. Building a simple Python web application image is demonstrated as a first example of creating a custom Docker image.
Docker is an amazing tool, but unless you work with it every day, you're probably left with a ton of questions. What's a container? What's an image? What's the difference between Docker, Machine, Compose, and Swarm? Why the heck should I care? Well, Docker makes it easier than ever to deploy and scale your applications and services. In addition, it lets you simulate your production environment on your local machine without heavy virtual machines. In this talk, we'll explore the basics of Docker, create a custom image for a web application, create a group of containers, and look at how you can put your apps into production on various cloud providers. At the end of the talk, you'll have the knowledge you need to put this to use with your own applications.
From Monolith to Docker Distributed ApplicationsCarlos Sanchez
Docker is revolutionizing the way people think about applications and deployments. It provides a simple way to run and distribute Linux containers for a variety of use cases, from lightweight virtual machines to complex distributed microservice architectures. But migrating an existing Java application to a distributed microservice architecture is no easy task, requiring a shift in the software development, networking, and storage to accommodate the new architecture. This presentation provides insights into the experience of the speaker and his colleagues in creating a Jenkins platform based on distributed Docker containers running on Apache Mesos and Marathon and applicable to all types of applications, especially Java- and JVM-based ones.
Containerization Is More than the New VirtualizationC4Media
Video and slides synchronized, mp3 and slide download available at URL http://bit.ly/1E5GzZX.
Jérôme Petazzoni borrows from his experience at Docker Inc. to explain live applications running in Docker, including reading logs, remote access, and troubleshooting tips. Filmed at qconsf.com.
Jérôme Petazzoni is a senior engineer at dotCloud, where he rotates between Ops, Support and Evangelist duties and the nickname of “master Yoda”, has earned.
Docker is a tool that makes it easier to use Linux containers (LXC) to deploy applications. It allows applications to run consistently across servers by including dependencies within containers. Containers are more lightweight than virtual machines and use less resources. Docker containers start faster than VMs and allow for easy sharing of application components. The Docker registry stores container images and metadata for easy sharing between developers and production environments.
Docker storage designing a platform for persistent dataDocker, Inc.
This document summarizes a presentation about Docker storage and persistent data. It discusses immutable Docker images, applications with persistent data requirements, and different approaches to persistent storage with Docker including per-container storage, shared storage on the same host, multi-host shared storage, Docker volume plugins, and orchestrating storage with Swarm and Kubernetes. Key takeaways are that shared storage allows for smaller images, efficient usage of repetitive data, and decoupling of applications and data, and that running databases in containers is acceptable if requirements for latency, IOPS, bandwidth, and security are met.
This session from DockerCon 18 covers the types of applications that have a requirement of persistent or shared storage, it discusses the various implementation methods with Docker and finally looks at automating the process with both Swarm and Kubernetes.
The original deck in PPTX is available here https://www.dropbox.com/s/pzqi0wbaxdqeca7/DCSF18_Docker%20Storage.pptx?dl=0
This document provides an introduction to Docker, including basic Docker concepts and terms. It discusses how Docker solves issues like scalability, resilience and portability by allowing processes to be isolated in lightweight containers. Key terms are explained, such as images, which contain the files and metadata to start a container, and containers, which are running instances of images. The document demonstrates Docker functionality by running example Alpine Linux containers and modifying and removing containers. It also discusses persisting container data using volumes and mounts.
CI and CD at Scale: Scaling Jenkins with Docker and Apache MesosCarlos Sanchez
In this presentation Carlos Sanchez will share his experience running Jenkins at scale, using Docker and Apache Mesos to create one of the biggest (if not the biggest) Jenkins clusters to date.
By taking advantage of Apache Mesos, the Jenkins platform is dynamically scaled to run jobs across hundreds of Jenkins masters, on Docker containers distributed across the Mesos cluster. Jenkins slaves are dynamically created based on load, using the Jenkins Mesos and Docker plugins, running in containers distributed across multiple hosts, and isolating job execution.
This presentation will allow a better understanding of Apache Mesos and the challenges of running Docker containerized and distributed applications, particularly JVM ones, by sharing a real world use case, including good and bad decisions and how they affected the development.
Docker-Hanoi @DKT , Presentation about Docker EcosystemVan Phuc
The document provides an overview of Docker Platform and Ecosystem. It begins with introductions and background on Docker, explaining how Docker solves the problem of dependency hell and portability issues by allowing applications to run in isolated containers that package code and dependencies. It then discusses key components of Docker including Engine, Registry, Machine, Swarm, Compose and tools like Toolbox and Cloud. The document concludes with examples of using Docker for continuous integration pipelines and microservices architectures.
Automate drupal deployments with linux containers, docker and vagrant Ricardo Amaro
This document discusses strategies for automating Drupal deployments using Linux containers, Vagrant, and Docker. It begins with an overview of virtual machines and their disadvantages compared to containers. It then covers using Linux containers (LXC), Vagrant, and Docker to build and deploy containerized Drupal environments that can be easily reproduced and deployed across different systems. The document provides examples of building Drupal containers using LXC, Vagrant, and Docker that take advantage of their portability and reproducibility.
Docker Online Meetup #3: Docker in ProductionDocker, Inc.
Jérôme Petazzoni discussed using Docker in production environments. He covered installing Docker on development machines and servers, building Docker images with Dockerfiles, distributing images through Docker Hub or private registries, using links or ambassador containers for service discovery, and orchestrating containers with tools like Kubernetes, Mesos, or configuration management systems. He also addressed logging, backups, and remote access of containers for sysadmin tasks.
In this talk Ben will walk you through running Cassandra in a docker environment to give you a flexible development environment that uses only a very small set of resources, both locally and with your favorite cloud provider. Lessons learned running Cassandra with a very small set of resources are applicable to both your local development environment and larger, less constrained production deployments.
This document provides an overview of containerization and Docker. It covers prerequisites, traditional application deployment challenges, container components like namespaces and cgroups, major Docker concepts like images and containers, common Docker commands, building Dockerfiles, and Docker workflows and best practices. Hands-on exercises are included to build and run containers.
Containerize Your Game Server for the Best Multiplayer Experience Docker, Inc.
Raymond Arifianto, AccelByte and
Mark Mandel, Google -
We have been deploying containerized micro-services for our Game Backend Services for a while. Now we are tackling the challenge to scale up fleets of game dedicated servers in multiple regions, multiple data centers and multiple providers - some in bare metal, some in Cloud. So we leverage docker containerization to deploy Game Servers to achieve Portability, Fast Deployment and Predictability, enabling us to scale up to thousands of servers, on demand, without a sweat.
How to Improve Your Image Builds Using Advance Docker BuildDocker, Inc.
Nicholas Dille, Haufe-Lexware + Docker Captain -
Docker continues to be the standard tool for building container images. For more than a year Docker ships with BuildKit as an alternative image builder, providing advanced features for secret and cache management. These features help to make image builds faster and more secure. In this session, Docker Captain Nicholas Dille will teach you how to use Buildkit features to your advantage.
Build & Deploy Multi-Container Applications to AWSDocker, Inc.
Lukonde Mwila, Entelect -
As the cloud-native approach to development and deployment becomes more prevalent, it's an exciting time for software engineers to be equipped on how to dockerize multi-container applications and deploy them to the cloud.
In this talk, Lukonde Mwila, Software Engineer at Entelect, will cover the following topics:
- Docker Compose
- Containerizing an Nginx Server
- Containerizing an React App
- Containerizing an Node.JS App
- Containerizing anMongoDB App
- Runing Multi-Container App Locally
- Creating a CI/CD Pipeline
- Adding a build stage to test containers and push images to Docker Hub
- Deploying Multi-Container App to AWS Elastic Beanstalk
Lukonde will start by giving an overview of how Docker Compose works and how it makes it very easy and straightforward to startup multiple Docker containers at the same time and automatically connect them together with some form of networking.
After that, Lukonde will take a hands on approach to containerize an Nginx server, a React app, a NodeJS app and a MongoDB instance to demonstrate the power of Docker Compose. He'll demonstrate usage of two Docker files for an application, one production grade and the other for local development and running of tests. Lastly, he'll demonstrate creating a CI/CD pipeline in AWS to build and test our Docker images before pushing them to Docker Hub or AWS ECR, and finally deploying our multi-container application AWS Elastic Beanstalk.
Securing Your Containerized Applications with NGINXDocker, Inc.
The document summarizes Kevin Jones' presentation on securing containerized applications with NGINX. It discusses the benefits of using a reverse proxy for security, NGINX best practices for TLS configuration, and deploying NGINX in Docker containers. It also provides code examples and configurations for setting up NGINX as a reverse proxy, optimizing TLS, and using NGINX as a sidecar proxy.
How To Build and Run Node Apps with Docker and ComposeDocker, Inc.
Kathleen Juell, Digital Ocean -
Containers are an essential part of today's microservice ecosystem, as they allow developers and operators to maintain standards of reliability and reproducibility in fast-paced deployment scenarios. And while there are best practices that extend across stacks in containerized environments, there are also things that make each stack distinct, starting with the application image itself.
This talk will dive into some of these particularities, both at the image and service level, while also covering general best practices for building and running Node applications with database backends using Docker and Compose.
Jessica Deen, Microsoft -
Helm 3 is here; let's go hands-on! In this demo-fueled session, I'll walk you through the differences between Helm 2 and Helm 3. I'll offer tips for a successful rollout or upgrade, go over how to easily use charts created for Helm 2 with Helm 3 (without changing your syntax), and review opportunities where you can participate in the project's future.
Distributed Deep Learning with Docker at SalesforceDocker, Inc.
Jeff Hajewski, Salesforce -
There is a wealth of information on building deep learning models with PyTorch or TensorFlow. Anyone interested in building a deep learning model is only a quick search away from a number of clear and well written tutorials that will take them from zero knowledge to having a working image classifier. But what happens when you need to deploy these models in a production setting? At Salesforce, we use TensorFlow models to help us provide customers with insights into their data, and we do this as close to real-time as possible. Designing these systems in a scalable manner requires overcoming a number of design challenges, but the core component is Docker. Docker enables us to design highly scalable systems by allowing us to focus on service interactions, rather than how our services will interact with the hardware. Docker is also at the core of our test infrastructure, allowing developers and data scientists to build and test the system in an end to end manner on their local machines. While some of this may sound complex, the core message is simplicity - Docker allows us to focus on the aspects of the system that matter, greatly simplifying our lives.
The First 10M Pulls: Building The Official Curl Image for Docker HubDocker, Inc.
James Fuller, webcomposite s.r.o. -
Curl is the venerable (yet very modern) 'swiss army knife' command line tool and library for transferring data with URLs. Recently we (the Curl team) decided to build a release for Docker Hub. This talk will outline our current development workflow with respect to the docker image and provide insights on what it takes to build a docker image for mass public consumption. We are also keen to learn from users and other developers how we might improve and enhance the official curl docker image.
Fabian Stäber, Instana -
In recent years, we saw a great paradigm shift in software engineering away from static monolithic applications towards dynamic distributed horizontally scalable architectures. Docker is one of the key technologies enabling this development. This shift poses a lot of new challenges for application monitoring, ranging from practical issues (need for automation) to technical challenges (Docker networking) to organizational topics (blurring line between software engineers and operations) to fundamental questions (define what is an application). In this talk we show how Docker changed the way we do monitoring, how modern application monitoring systems work, and what future developments we expect.
COVID-19 in Italy: How Docker is Helping the Biggest Italian IT Company Conti...Docker, Inc.
Clemente Biondo, Engineering Ingegneria Informatica -
When the COVID 19 pandemic started, Engineering Ingegneria Informatica Group (1.25 billion euros of revenues, 65 offices around the world, 12.000 employees) was forced to put their digital transformation to the test in order to maintain operational continuity. In this session, Clemente Biondo, the Tech Lead of the Information Systems Department, will share how his company is reacting to this unforeseeable scenario and how Docker-driven digital transformation had paved the path for work to continue remotely. Clemente will discuss learnings moving from colocated teams, manual approaches, email based-business processes, and a monolithic application to a mature DevOps culture characterized by a distributed autonomous workforce and a continuous deployment process that deploys backward-compatible Docker containerized microservices into hybrid multi cloud datacenters an average of twice a day with zero-downtime. He will detail how they use Docker to unify dev, test and production environments, and as an efficient and automated mechanism for deploying applications. Lastly, Clemente shares how, in our darkest hour, he and others are working to shine their brightest light.
The document discusses how NOAA's Space Weather Prediction Center transitioned from a monolithic architecture to microservices using Docker. It describes how they started with a small verification project, then replaced their critical GOES satellite data source. This improved developers' morale and delivery speed. They encountered some security issues initially but learned from them. The transition was very successful and allowed them to quickly expand their mission to forecast aviation impacts using scientists' models packaged as Docker services.
Become a Docker Power User With Microsoft Visual Studio CodeDocker, Inc.
Brian Christner, 56k + Docker Captain -
In this session, we will unlock the full potential of using Microsoft Visual Studio Code (VS Code) and Docker Desktop to turn you into a Docker Power User. When we expand and utilize the VS Code Docker plugin, we can take our projects and Docker skills to the next level. In addition to using VS Code, we streamline our Docker Desktop development workflow with less context switching and built-in shortcuts. You will learn how to bootstrap new projects, quickly write Dockerfiles utilizing templates, build, run, and interact with containers all from VS Code.
How to Use Mirroring and Caching to Optimize your Container RegistryDocker, Inc.
Brandon Mitchell, Boxboat + Docker Captain -
How do you make your builds more performant? This talk looks at options to configure caching and mirroring of images that you need to save on bandwidth costs and to keep running even if something goes down upstream.
Monolithic to Microservices + Docker = SDLC on Steroids!Docker, Inc.
Ashish Sharma, SS&C Eze -
SS&C Eze provides various products in the stock market domain. We spent the last couple of years building Eclipse which is an investment suite born in cloud. The journey so far has been very interesting. The very first version of the product were a bunch of monolithic windows services and deployed using Octopus tool. We successfully managed to bring all the monolithic problem to the cloud and created a nightmare for ourselves. We then started applying microservices architecture principles and started breaking the monolithic into small services. Very soon we realized that we need a better packaging/deployment tool. Docker looked like a magical solution to our problem. Since its adoption, It has not only solved the deployment problem for us but has made a deep impact on different aspects of SDLC. It allowed us to use heterogeneous technology stacks, simplified development environment setup, simplified our testing strategy, improved our speed of delivery, and made our developers more productive. In this talk I would like to share our experience of using Docker and its positive impact on our SDLC.
Kubernetes networking can be complex to scale due to issues like growing iptables rules, but newer solutions are helping. Pod networking uses CNI plugins like flannel or Calico to assign each pod an IP and allow communication. Service networking uses kube-proxy and iptables or IPVS for load balancing to pods. DNS is used to resolve service names to IPs. While Kubernetes networking brings flexibility, operators must learn the nuances of their specific CNI plugin and issues can arise, but the ecosystem adapts quickly to new needs and changes don't impact all workloads.
Andy Clemenko, StackRox -
One underutilized, and amazing, thing about the docker image scheme is labels. Labels are a built in way to document all aspects about the image itself. Think about all the information that the tags inside your clothing carry. If you care to look you can find out everything about the garment. All that information can be very valuable. Now think about how we can leverage labels to carry similar information. We can even use the labels to contain Docker Compose or even Kubernetes Yaml. We can even include labels into the CI/CD process making things more secure and smoother. Come find out some fun techniques on how to leverage labels to do some fun and amazing things.
Using Docker Hub at Scale to Support Micro Focus' Delivery and Deployment ModelDocker, Inc.
Micro Focus uses Docker Hub at scale to support its software delivery and deployment model. Some key points:
- Docker Hub is used as the registry service for Micro Focus container images
- It allows for optimized, secure, reliable and cost-effective software delivery through deployments and updates of container images to customers and partners
- Micro Focus leverages features like private repositories, offline/online access, signing and scanning of images, and integration with CI/CD pipelines
- Over 1,650 organizations, 450 repositories, and 18 teams are used on Docker Hub to manage access and deliver software from Micro Focus
Build & Deploy Multi-Container Applications to AWSDocker, Inc.
Lukonde Mwila, Entelect
As the cloud-native approach to development and deployment becomes more prevalent, it's an exciting time for software engineers to be equipped on how to dockerize multi-container applications and deploy them to the cloud.
In this talk, Lukonde Mwila, Software Engineer at Entelect, will cover the following topics:
- Docker Compose
- Containerizing an Nginx Server
- Containerizing an React App
- Containerizing an Node.JS App
- Containerizing anMongoDB App
- Runing Multi-Container App Locally
- Creating a CI/CD Pipeline
- Adding a build stage to test containers and push images to Docker Hub
- Deploying Multi-Container App to AWS Elastic Beanstalk
Lukonde will start by giving an overview of how Docker Compose works and how it makes it very easy and straightforward to startup multiple Docker containers at the same time and automatically connect them together with some form of networking.
After that, Lukonde will take a hands on approach to containerize an Nginx server, a React app, a NodeJS app and a MongoDB instance to demonstrate the power of Docker Compose. He'll demonstrate usage of two Docker files for an application, one production grade and the other for local development and running of tests. Lastly, he'll demonstrate creating a CI/CD pipeline in AWS to build and test our Docker images before pushing them to Docker Hub or AWS ECR, and finally deploying our multi-container application AWS Elastic Beanstalk.
From Fortran on the Desktop to Kubernetes in the Cloud: A Windows Migration S...Docker, Inc.
Elton Stoneman, Docker Captain + Container Consultant and Trainer
How do you provide a SaaS offering when your product is a 10-year old Fortran app, currently built to run on Windows 10? With Docker and Kubernetes of course - and you can do it in a week (... to prototype level at least).
In this session I'll walk through the processes and practicalities of taking an older Windows app, making it run in containers with Kubernetes, and then building a simple API wrapper to host the whole stack as a cloud-based SaaS product.
There's a lot of technology here from a real world case study, and I'll focus on:
- running Windows apps in Docker containers
- building a .NET Core API which can run in Linux or Windows containers
- running the stack in Kubernetes with Docker Desktop locally and AKS in the cloud
- configuring AKS workloads in Azure to burst out to Azure Container Instances
And there's a core theme to this session: Docker and Kubernetes are complex technologies, but they're the key to modern development. If you invest time learning them, they make projects like this simple, portable, fast and fun.
Developing with Docker for the Arm ArchitectureDocker, Inc.
This virtual meetup introduces the concepts and best practices of using Docker containers for software development for the Arm architecture across a variety of hardware systems. Using Docker Desktop on Windows or Mac, Amazon Web Services (AWS) A1 instances, and embedded Linux, we will demonstrate the latest Docker features to build, share, and run multi-architecture images with transparent support for Arm.
UiPath Test Automation using UiPath Test Suite series, part 6DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 6. In this session, we will cover Test Automation with generative AI and Open AI.
UiPath Test Automation with generative AI and Open AI webinar offers an in-depth exploration of leveraging cutting-edge technologies for test automation within the UiPath platform. Attendees will delve into the integration of generative AI, a test automation solution, with Open AI advanced natural language processing capabilities.
Throughout the session, participants will discover how this synergy empowers testers to automate repetitive tasks, enhance testing accuracy, and expedite the software testing life cycle. Topics covered include the seamless integration process, practical use cases, and the benefits of harnessing AI-driven automation for UiPath testing initiatives. By attending this webinar, testers, and automation professionals can gain valuable insights into harnessing the power of AI to optimize their test automation workflows within the UiPath ecosystem, ultimately driving efficiency and quality in software development processes.
What will you get from this session?
1. Insights into integrating generative AI.
2. Understanding how this integration enhances test automation within the UiPath platform
3. Practical demonstrations
4. Exploration of real-world use cases illustrating the benefits of AI-driven test automation for UiPath
Topics covered:
What is generative AI
Test Automation with generative AI and Open AI.
UiPath integration with generative AI
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
Threats to mobile devices are more prevalent and increasing in scope and complexity. Users of mobile devices desire to take full advantage of the features
available on those devices, but many of the features provide convenience and capability but sacrifice security. This best practices guide outlines steps the users can take to better protect personal devices and information.
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slackshyamraj55
Discover the seamless integration of RPA (Robotic Process Automation), COMPOSER, and APM with AWS IDP enhanced with Slack notifications. Explore how these technologies converge to streamline workflows, optimize performance, and ensure secure access, all while leveraging the power of AWS IDP and real-time communication via Slack notifications.
Climate Impact of Software Testing at Nordic Testing DaysKari Kakkonen
My slides at Nordic Testing Days 6.6.2024
Climate impact / sustainability of software testing discussed on the talk. ICT and testing must carry their part of global responsibility to help with the climat warming. We can minimize the carbon footprint but we can also have a carbon handprint, a positive impact on the climate. Quality characteristics can be added with sustainability, and then measured continuously. Test environments can be used less, and in smaller scale and on demand. Test techniques can be used in optimizing or minimizing number of tests. Test automation can be used to speed up testing.
“An Outlook of the Ongoing and Future Relationship between Blockchain Technologies and Process-aware Information Systems.” Invited talk at the joint workshop on Blockchain for Information Systems (BC4IS) and Blockchain for Trusted Data Sharing (B4TDS), co-located with with the 36th International Conference on Advanced Information Systems Engineering (CAiSE), 3 June 2024, Limassol, Cyprus.
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfPaige Cruz
Monitoring and observability aren’t traditionally found in software curriculums and many of us cobble this knowledge together from whatever vendor or ecosystem we were first introduced to and whatever is a part of your current company’s observability stack.
While the dev and ops silo continues to crumble….many organizations still relegate monitoring & observability as the purview of ops, infra and SRE teams. This is a mistake - achieving a highly observable system requires collaboration up and down the stack.
I, a former op, would like to extend an invitation to all application developers to join the observability party will share these foundational concepts to build on:
Dr. Sean Tan, Head of Data Science, Changi Airport Group
Discover how Changi Airport Group (CAG) leverages graph technologies and generative AI to revolutionize their search capabilities. This session delves into the unique search needs of CAG’s diverse passengers and customers, showcasing how graph data structures enhance the accuracy and relevance of AI-generated search results, mitigating the risk of “hallucinations” and improving the overall customer journey.
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc
How does your privacy program stack up against your peers? What challenges are privacy teams tackling and prioritizing in 2024?
In the fifth annual Global Privacy Benchmarks Survey, we asked over 1,800 global privacy professionals and business executives to share their perspectives on the current state of privacy inside and outside of their organizations. This year’s report focused on emerging areas of importance for privacy and compliance professionals, including considerations and implications of Artificial Intelligence (AI) technologies, building brand trust, and different approaches for achieving higher privacy competence scores.
See how organizational priorities and strategic approaches to data security and privacy are evolving around the globe.
This webinar will review:
- The top 10 privacy insights from the fifth annual Global Privacy Benchmarks Survey
- The top challenges for privacy leaders, practitioners, and organizations in 2024
- Key themes to consider in developing and maintaining your privacy program
Communications Mining Series - Zero to Hero - Session 1DianaGray10
This session provides introduction to UiPath Communication Mining, importance and platform overview. You will acquire a good understand of the phases in Communication Mining as we go over the platform with you. Topics covered:
• Communication Mining Overview
• Why is it important?
• How can it help today’s business and the benefits
• Phases in Communication Mining
• Demo on Platform overview
• Q/A
Infrastructure Challenges in Scaling RAG with Custom AI modelsZilliz
Building Retrieval-Augmented Generation (RAG) systems with open-source and custom AI models is a complex task. This talk explores the challenges in productionizing RAG systems, including retrieval performance, response synthesis, and evaluation. We’ll discuss how to leverage open-source models like text embeddings, language models, and custom fine-tuned models to enhance RAG performance. Additionally, we’ll cover how BentoML can help orchestrate and scale these AI components efficiently, ensuring seamless deployment and management of RAG systems in the cloud.
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...Neo4j
Leonard Jayamohan, Partner & Generative AI Lead, Deloitte
This keynote will reveal how Deloitte leverages Neo4j’s graph power for groundbreaking digital twin solutions, achieving a staggering 100x performance boost. Discover the essential role knowledge graphs play in successful generative AI implementations. Plus, get an exclusive look at an innovative Neo4j + Generative AI solution Deloitte is developing in-house.
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...SOFTTECHHUB
The choice of an operating system plays a pivotal role in shaping our computing experience. For decades, Microsoft's Windows has dominated the market, offering a familiar and widely adopted platform for personal and professional use. However, as technological advancements continue to push the boundaries of innovation, alternative operating systems have emerged, challenging the status quo and offering users a fresh perspective on computing.
One such alternative that has garnered significant attention and acclaim is Nitrux Linux 3.5.0, a sleek, powerful, and user-friendly Linux distribution that promises to redefine the way we interact with our devices. With its focus on performance, security, and customization, Nitrux Linux presents a compelling case for those seeking to break free from the constraints of proprietary software and embrace the freedom and flexibility of open-source computing.
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024Neo4j
Neha Bajwa, Vice President of Product Marketing, Neo4j
Join us as we explore breakthrough innovations enabled by interconnected data and AI. Discover firsthand how organizations use relationships in data to uncover contextual insights and solve our most pressing challenges – from optimizing supply chains, detecting fraud, and improving customer experiences to accelerating drug discoveries.
DockerCon EU 2015: Persistent, stateful services with docker cluster, namespaces and docker volume magic.
1. Persistent, stateful services with docker
clusters, namespaces and docker volume
magic
Michael Neale
Co-founder, CloudBees (that Jenkins
company)
2. Agenda
Supercontainers and storage
Privileges
It’s all files (part 2)
Controlling the host and peer containers
Storage engines
Stateful docker clusters
“off the shelf” cluster scheduling
The solution chosen
Other tools out there
Credits…
Background
Use-case for stateful services
Docker volumes
Quick namespaces revision
nsenter
Mounts and Volumes
It’s all files (part 1)
the mount namespace
creating bind mounts
docker volume api (use it!)
6. My history with docker
6
Ex Red Hat where I heard about “control groups”
Starting CloudBees, looking at ways to fairly multi tenant
Later would discover (and with much help) use LXC
Saw a video of Solomon demoing docker and didn’t believe it
Still didn’t believe it
For the longest time didn’t believe it
7. CloudBees & Docker
7
Actually spoke about this at DockerCon 2014 (the first one!)
cgroups -> LXC -> LXC + ZFS copy-on-write
Like dotCloud - ran a PaaS (as well as CI/CD toolchain)
In 2014 moved to focus on CI/CD (dotCloud focussed on docker)
In 2014 moved to adopt docker over LXC (and ZFS)
Using: Docker Hub (private repos), Private Registry
Many of our customers are commercial users of docker
Docker Jenkins plugins: docker hub, build and publish and many more
8. 8
Put all the things (OSS and commercial) on docker hub
9. 9
I started the “official” jenkins image early on
updated now ~weekly (with LTS images also)
11. A stateless cluster of apps is the dream
11
But the reality is, many apps still need state, a disk
Databases for example
Hands up who would run Oracle on NFS?
12. Reality: local disk
Network filesystems are great*
But sometimes you need the data close to the processing
EBS, HDFS, GCP, OpenStack block storage…
BUT: how to balance this need for local state with “ephemeral” servers
Servers come and go, need to restore the data (fast)
Need to backup the data (delta/snapshots - fast)
Alternatives: SANs (reattach volumes to replacement nodes, some
clouds also support this)
Reason for backups: resilience. Volumes can disappear too.
13. Current product
13
Years of experience with containers
EC2, ZFS, EBS, LXC
learn from it to build something new and “turn key” installable,
powered by docker
I accidentally created a cluster scheduler (it happens.. please don’t)
An evolved “pre-docker” system
14. Aim: a new product
14
A distributed Jenkins cluster
10000s of “masters”, 100000s of elastic build workers
Utilise “Off The Shelf” expertise based around docker: Mesos, Docker
Swarm, Kubernetes
Work within existing constraints of a lively and evolving open source
project
(this means accepting local disk state… for now)
15. Additional Constraints
Only want to depend on docker being present on “worker nodes”
Off the shelf cluster scheduler
Use local disk*
Multiple target clouds to be supported
Multiple storage “engines” to be supported
* Would love to refactor to DB backed
16. “Storage engines?”
“The thing that backs up and restores local disks”
eg: EBS (snapshots), rsync, NFS, ZFS send …
Same cluster management, same api, different storage tech for different
clouds/needs.
Ensures volumes are backed up in a consistent state (using LVM
snapshot, xfs_freeze, as needed)
17. Docker volumes
17
Docker helpfully lets you bind mount to host
Giving you a choice of ways to get data to the host
Containers can remain ephemeral
However, you need to manage those underlying volumes
Note: you shouldn’t need to do what I did. Use something off the shelf if
you can. If you must, there is an excellent docker plugin api and volume
plugin api.
18. Solving local disk with docker
client cluster sched. docker host storage
r
u
n
n
request app
find free slot
ask for data
provide data
Container fully running with data
19. Using “trickery”
client cluster sched. docker host storage
r
u
n
n
request app
find free slot
request data
provide data,
bind mount
container starts,
asks for dynamic
bind mount,
waits
20. With docker volume plugin api
client cluster sched. docker host storage
r
u
n
n
request app
find free slot
json
provide data
docker calls
volume plugin
BEFORE
container starts,
launches with
bind mount
21. However: Docker plugin api did not exist yet!
21
I had to make do with “trickery”
Other choices like powerstrip existed, but wanted “standard” docker
And you are here for namespace trickery
So lets learn from it…
23. Namespaces - really quick…
23
Along with cgroups are “foundational tech” for containers
6 types: Mount, UTS, IPC, PID, Network and User
My favourites:
Mount: filesystem stuff (that I used)
PID, Network and the exciting User namespaces!
https://lwn.net/Articles/531114/
24. How do we access these namespaces?
24
nsenter - command line tool
nsenter allows you to “enter” a namespace and do something in the
context of it
Available out of the box in many linux distros now
https://github.com/karelzak/util-linux/blob/master/sys-utils/nsenter.c
https://blog.docker.com/tag/nsenter/
26. Mount namespace
26
Containers don’t see all mount points, all devices, just their own
Allows dockers “bind mount” to work
A “bind mount” in linux is really an “alternative view of an existing
directory tree”
A docker bind mount takes that “alternative view” and makes it visible
to the container (via its mount name space)
Magic? No. Linux.
27. It’s all files, part 1
27
Start any container
Access docker host and run this to get the pid of the whole container:
docker inspect --format {{.State.Pid}} <container id>
You can then see the 6 namespaces in /proc/<PID>/ns:
ls /proc/7865/ns/
ipc mnt net pid user uts
28. /proc virtual filesystem and nsenter
28
/proc is a virtual filesystem (http://www.tldp.org/LDP/Linux-
Filesystem-Hierarchy/html/proc.html)
Run a command inside a given containers namespace:
nsenter --mount=/proc/$PID/ns/mnt --
/usr/bin/command param
RUN A COMMAND FROM HOST AS IF YOU ARE IN THAT CONTAINER
30. Creating a bind mount on a running container
30
( -v /var/foo:/var/bar ) High level steps:
Get the underlying device from the host, into the container
mount the device in the container
bind mount in the container to the “directory you want”
unmount the device in container
remove the initial mount
What you are left with: a bind mount to the volume on the host you
wanted in the first place, and only that path. Not the whole device/volume
on host.
32. 32
# Using a device’s numbers we can create the same device in container
# use nsenter to create a device file IN the container (using its $PID):
nsenter --mount=/proc/$PID/ns/mnt -- mknod --mode 0600 /dev/sda1 b 8
0
# Now we have the device ALSO in the container!
# We can mount it (normal linux)
# bind mount to the desired directory (also normal linux)!
# all from the host
34. Now we have a dynamic bind mount
34
As if we used -v /var/foo:/var/bar on startup
Remember: DON’T DO THIS!
Really: you shouldn’t need to do this yourself.
Use the docker plugin volume api! (if you must)
35. Docker plugin API
35
Out of process JSON based api (but running on same host)
plugins are installed by putting a file in a directory, and referred by
name (minutes the extension)
Well defined JSON protocol
https://docs.docker.com/extend/plugin_api/
36. Docker volume plugin API
36
docker run -v volumename:/data --volume-driver=mydriver ..
“volumename” is passed to the registered volume-driver
(which is listening on http)
volume-driver then prepares the data somewhere on the host, returns
where it lives (via json)… docker then bind mounts it in as /data
All happens BEFORE container starts
https://docs.docker.com/extend/plugins_volume/
37. Docker volume plugin API
37
Would not require messing with namespaces
Still allow an out of process “volume service” to take care of messy
volume details
However - DOES require you to register the plugin with docker on the
host
And less terrifying fun than nsenter and namespaces
38. If you really must
38
https://github.com/michaelneale/bind-mount-supercontainer
Sample python code that I prototyped this with. Use with care!
40. Supercontainers - concept
40
Term came from Red Hat
http://developerblog.redhat.com/2014/11/06/introducing-a-super-
privileged-container-concept/
You have heard of privileged containers?
docker run --privileged ..
Drops all namespace restrictions
“Super privileged containers” add in more access to the underlying
host…
41. It’s all files (part 2)
41
Add in the host root filesystem, docker daemon, and all the rest:
docker run -v /var/run/docker.sock:/var/run/docker.sock
—privileged
-v /:/media/host
my-super-container
Brings in docker socket, and root as /media/host
/media/host then contains ALL devices, virtual files, /proc etc
42. It’s all files (part 2)
42
Why?
We can do everything we did with nsenter before but from WITHIN a
“peer container”
44. It’s all files (part 2)
44
We can do everything we did with nsenter before but from WITHIN a
“peer container”
Remember requirements: vanilla docker, only docker installed on host
Use super-container as a “agent” container, do all the automation you
could want
No need for extra bits on the host box
Allows using “off the shelf” cluster scheduling (only docker need be
installed)
45. Controlling the host
45
Host can be accessed from super-container via nsenter
PID of host is 1!
eg, from super-container, get all mounts:
nsenter --mount=/media/host/proc/1/ns/mnt -- cat
/proc/mounts
Run a command, from container, on the host (stuff after “--")
/media/host lets us get to the host. Even devices.
46. Controlling the host
46
Host can be accessed from super-container via nsenter
Do all the steps as before, but with “nsenter —
mount=/media/host/proc/1/ns/mnt” prefixed
47. Controlling peer containers from supercontainer
47
Peers are other “ordinary” containers on the same host as the super
container
Peers can be accessed from super-container also via nsenter
Just like before, we use nsenter, with the peer containers $PID
But prefix it with the hosts filesystem:
nsenter --mount=/proc/$PID/ns/mnt -- ..
becomes:
nsenter --mount=/media/host/proc/$PID/ns/mnt -- ..
49. Storage engines
49
My requirement: multiple implementations for different clouds
Different clouds have different storage engines
Super container great place to host volume service
Different implementations on service depending on what is on offer
EBS, NFS, openstack rsync and more
This “volume service super-container” is responsible for
backup/restore
51. Snapshots/backups
51
Snapshots a cheap and quick
Zone resilience
Volumes (ie: disks) are not as durable as snapshots/backups
Similar in other platforms: GCP, OpenStack, Azure.
Google compute persistent disks: does allow volumes read-only extra
mounts across instances for redundancy of compute nodes
In our case: failing over is “restoring from backup” - always test your
backups!
52. Supercontainers - summary
52
A useful tool for low level control
No need to install bits on the host
Can control peers directly
Could be a great place to host a docker volume plugin implementation
(not currently recommended in Docker plugin api docs)
54. What we built…
.. an elastic and scalable Jenkins based product for
multiple cloud environments, on docker
55. Cluster schedulers/managers
55
Remember: I have build schedulers before, would rather not again
Docker Swarm, Mesos/Marathon, Kubernetes etc
Some have concepts of volumes
All can schedule “plain” docker containers
Super containers can give you a way to get lower level access
56. What we settled on
56
Super containers to implement volume service
Support for multiple storage engines for different clouds
Scheduled via mesos+marathon
Only docker (+ mesos in this case) required on the hosts
Why mesos: practical choice for us but not a tight coupling
(could mesos be in a super container? probably)
Using containers for all the things: elastic search nodes, builds, even
haproxy
For us, 5 minute or event based backups/snapshots are fine
57. Running supercontainers
57
Eg. marathon: schedule a super container to run on each host
Constraint on volume service: one per host, size: number of servers in
cluster (3 in this case):
vol service vol servicevol service
master master
elastic search
haproxy
(free)
58. Working with EBS (an example)
client container volume service EBS api
requests backup
freeze for snapshot
initiate snapshot
unfreeze backup delta,
copy to s3
optimisation: use LVM snapshot instead of freeze
59. Backups, backups
59
Servers are ephemeral
Servers come and go
Disks are fallible (even if cloud platforms call them “volumes”)
Workload moves around
Restore data when workload is moved to a new location
Delta backups are used to avoid full copies each time
60. Cluster schedulers/managers
60
Storage awareness is being built in increasingly
(Kubernetes volumes, mesos storage awareness)
Ideal world: your cluster manager will do all this for you.
If you live in that world: congrats.
Make yourself a cocktail:
61. My recipe for no-sugar old fashioned:
https://gist.github.com/michaelneale/60341
45
61
62. “off the shelf” stateful volume tools
62
Rexray: use volume plugin api for Amazon EBS, Rackspace and more
Flocker from ClusterHQ
Kubernetes volume support
Apache “Mysos”: MySQL service backed up to HDFS on mesos
Tutum from Docker! has support for persistent volumes
Watch this space… (changing constantly)
https://docs.clusterhq.com/en/1.4.0/labs/docker-plugin.html
https://github.com/emccode/rexray
63. Stateful volumes summary
63
It is possible with docker
Avoid doing it yourself is someone else already has
Using local filesystem directly does feel a bit like “legacy”
But it is a reality for some apps (especially database services)
Lovely to port everything to be stateless, database backed, blobstore
backed, but it takes time
Lean on the capabilities of the underlying platform where you can
64. Credits
64
Jérôme Petazzoni (@jpetazzo) - years of inspirational blog posts, hacks on
linux/docker/volumes. And great hair.
http://jpetazzo.github.io/2015/01/13/docker-mount-dynamic-volumes/ -
BTW Jerome - it works for real!
Red Hat for Super Container concepts: Daniel Walsh:
http://developerblog.redhat.com/2014/11/06/introducing-a-super-privileged-
container-concept/
Trevor Jay from Red Hat for some final namespace tips
https://securityblog.redhat.com/author/tjay/
I really just mashed up the above concepts:
https://michaelneale.blogspot.com.au/2015/02/mounting-devices-host-
from-super.html
Device numbers are kernel internal representation of the device file - the real thing
AWS zones are independent data centers (actually more than just one DC per zone). Snapshots live in s3, across zones. You can migrate between zones by creating a new volume from a snapshot in the required zone. Keeping fresh snapshots allows you to move on failure easily. Cost of snapshots is small, as only a delta is taken.