Docker for Developers

Docker for Developers

Author: Richard Bullington-McGuire

Publisher: Packt Publishing Ltd

Published: 2020-09-14

Total Pages: 468

ISBN-13: 178953948X

DOWNLOAD EBOOK

Learn how to deploy and test Linux-based Docker containers with the help of real-world use cases Key FeaturesUnderstand how to make a deployment workflow run smoothly with Docker containersLearn Docker and DevOps concepts such as continuous integration and continuous deployment (CI/CD)Gain insights into using various Docker tools and librariesBook Description Docker is the de facto standard for containerizing apps, and with an increasing number of software projects migrating to containers, it is crucial for engineers and DevOps teams to understand how to build, deploy, and secure Docker environments effectively. Docker for Developers will help you understand Docker containers from scratch while taking you through best practices and showing you how to address security concerns. Starting with an introduction to Docker, you'll learn how to use containers and VirtualBox for development. You'll explore how containers work and develop projects within them after you've explored different ways to deploy and run containers. The book will also show you how to use Docker containers in production in both single-host set-ups and in clusters and deploy them using Jenkins, Kubernetes, and Spinnaker. As you advance, you'll get to grips with monitoring, securing, and scaling Docker using tools such as Prometheus and Grafana. Later, you'll be able to deploy Docker containers to a variety of environments, including the cloud-native Amazon Elastic Kubernetes Service (Amazon EKS), before finally delving into Docker security concepts and best practices. By the end of the Docker book, you'll be able to not only work in a container-driven environment confidently but also use Docker for both new and existing projects. What you will learnGet up to speed with creating containers and understand how they workPackage and deploy your containers to a variety of platformsWork with containers in the cloud and on the Kubernetes platformDeploy and then monitor the health and logs of running containersExplore best practices for working with containers from a security perspectiveBecome familiar with scanning containers and using third-party security tools and librariesWho this book is for If you're a software engineer new to containerization or a DevOps engineer responsible for deploying Docker containers in the cloud and building DevOps pipelines for container-based projects, you'll find this book useful. This Docker containers book is also a handy reference guide for anyone working with a Docker-based DevOps ecosystem or interested in understanding the security implications and best practices for working in container-driven environments.


Using Docker

Using Docker

Author: Adrian Mouat

Publisher: "O'Reilly Media, Inc."

Published: 2015-12-09

Total Pages: 351

ISBN-13: 1491915927

DOWNLOAD EBOOK

Docker containers offer simpler, faster, and more robust methods for developing, distributing, and running software than previously available. With this hands-on guide, you’ll learn why containers are so important, what you’ll gain by adopting Docker, and how to make it part of your development process. Ideal for developers, operations engineers, and system administrators—especially those keen to embrace a DevOps approach—Using Docker will take you from Docker and container basics to running dozens of containers on a multi-host system with networking and scheduling. The core of the book walks you through the steps needed to develop, test, and deploy a web application with Docker. Get started with Docker by building and deploying a simple web application Use Continuous Deployment techniques to push your application to production multiple times a day Learn various options and techniques for logging and monitoring multiple containers Examine networking and service discovery: how do containers find each other and how do you connect them? Orchestrate and cluster containers to address load-balancing, scaling, failover, and scheduling Secure your system by following the principles of defense-in-depth and least privilege


Developing with Docker

Developing with Docker

Author: Jaroslaw Krochmalski

Publisher: Packt Publishing Ltd

Published: 2016-11-30

Total Pages: 256

ISBN-13: 1786466333

DOWNLOAD EBOOK

Change the way your organization deploys software at scale with this fast-paced guide to the world of Docker About This Book Cut through the noise and in simple terms learn to package your applications and test, ship, and scale your containers Find and build images and successfully run your programs within containers Build, deploy, and test your Docker containers and put them to work in production Who This Book Is For This book is for IT professionals, system administrators, and DevOps professionals or anyone looking to quickly develop and deploy software to production at scale. If you are interested in Docker, DevOps, or containers in general, don't look any further. What You Will Learn Understand Docker's architecture Build, ship, and run distributed applications Deploy, automate, and manage the execution of applications within Docker Scale and virtualize images and containers Utilize the networking features that Docker offers Use repositories to store and retrieve images In Detail This fast-paced practical guide will get you up and running with Docker. Using Docker, you will be able to build, ship, and run many distributed applications in real time. You will start with quickly installing Docker and start working with images and containers. We will present different types of containers and their applications, and show you how to find and build images. You will learn how you can contribute to the image repository by publishing different images. This will familiarize you with the image building process and you will be able to successfully run your programs within containers. By finishing this book, you will be well equipped in deploying your applications using Docker and will have a clear understanding of concepts, techniques, and practical methods to get it running in production systems. Style and approach This book takes a fast-paced practical approach that quickly gets you up and running with Docker so that you spend less time learning and more time deploying Docker containers effectively. This book contains a mix of concepts, practical examples, techniques, and the most up-to-date content to run things effectively in production. We'll show you the easiest way to speed up your development and deployment with Docker.


Practical Docker with Python

Practical Docker with Python

Author: Sathyajith Bhat

Publisher: Apress

Published: 2018-07-26

Total Pages: 195

ISBN-13: 1484237846

DOWNLOAD EBOOK

Learn the key differences between containers and virtual machines. Adopting a project based approach, this book introduces you to a simple Python application to be developed and containerized with Docker. After an introduction to Containers and Docker you'll be guided through Docker installation and configuration. You'll also learn basic functions and commands used in Docker by running a simple container using Docker commands. The book then moves on to developing a Python based Messaging Bot using required libraries and virtual environment where you'll add Docker Volumes to your project, ensuring your container data is safe. You'll create a database container and link your project to it and finally, bring up the Bot-associated database all at once with Docker Compose. What You'll Learn Build, run, and distribute Docker containers Develop a Python App and containerize it Use Dockerfile to run the Python App Define and run multi-container applications with Docker Compose Work with persisting data generated by and used by Docker containers Who This Book Is For Intermediate developers/DevOps practitioners who are looking to improve their build and release workflow by containerizing applications


Learn Docker in a Month of Lunches

Learn Docker in a Month of Lunches

Author: Elton Stoneman

Publisher: Manning Publications

Published: 2020-08-04

Total Pages: 462

ISBN-13: 1617297054

DOWNLOAD EBOOK

Summary Go from zero to production readiness with Docker in 22 bite-sized lessons! Learn Docker in a Month of Lunches is an accessible task-focused guide to Docker on Linux, Windows, or Mac systems. In it, you’ll learn practical Docker skills to help you tackle the challenges of modern IT, from cloud migration and microservices to handling legacy systems. There’s no excessive theory or niche-use cases—just a quick-and-easy guide to the essentials of Docker you’ll use every day. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the technology The idea behind Docker is simple: package applica­tions in lightweight virtual containers that can be easily installed. The results of this simple idea are huge! Docker makes it possible to manage applications without creating custom infrastructures. Free, open source, and battle-tested, Docker has quickly become must-know technology for developers and administrators. About the book Learn Docker in a Month of Lunches introduces Docker concepts through a series of brief hands-on lessons. Follow­ing a learning path perfected by author Elton Stoneman, you’ll run containers by chapter 2 and package applications by chapter 3. Each lesson teaches a practical skill you can practice on Windows, macOS, and Linux systems. By the end of the month you’ll know how to containerize and run any kind of application with Docker. What's inside Package applications to run in containers Put containers into production Build optimized Docker images Run containerized apps at scale About the reader For IT professionals. No previous Docker experience required. About the author Elton Stoneman is a consultant, a former architect at Docker, a Microsoft MVP, and a Pluralsight author. Table of Contents PART 1 - UNDERSTANDING DOCKER CONTAINERS AND IMAGES 1. Before you begin 2. Understanding Docker and running Hello World 3. Building your own Docker images 4. Packaging applications from source code into Docker Images 5. Sharing images with Docker Hub and other registries 6. Using Docker volumes for persistent storage PART 2 - RUNNING DISTRIBUTED APPLICATIONS IN CONTAINERS 7. Running multi-container apps with Docker Compose 8. Supporting reliability with health checks and dependency checks 9. Adding observability with containerized monitoring 10. Running multiple environments with Docker Compose 11. Building and testing applications with Docker and Docker Compose PART 3 - RUNNING AT SCALE WITH A CONTAINER ORCHESTRATOR 12. Understanding orchestration: Docker Swarm and Kubernetes 13. Deploying distributed applications as stacks in Docker Swarm 14. Automating releases with upgrades and rollbacks 15. Configuring Docker for secure remote access and CI/CD 16. Building Docker images that run anywhere: Linux, Windows, Intel, and Arm PART 4 - GETTING YOUR CONTAINERS READY FOR PRODUCTION 17. Optimizing your Docker images for size, speed, and security 18. Application configuration management in containers 19. Writing and managing application logs with Docker 20. Controlling HTTP traffic to containers with a reverse proxy 21. Asynchronous communication with a message queue 22. Never the end


Docker in Action, Second Edition

Docker in Action, Second Edition

Author: Jeffrey Nickoloff

Publisher: Simon and Schuster

Published: 2019-10-28

Total Pages: 481

ISBN-13: 1638351740

DOWNLOAD EBOOK

Summary Docker in Action, Second Edition teaches you the skills and knowledge you need to create, deploy, and manage applications hosted in Docker containers. This bestseller has been fully updated with new examples, best practices, and a number of entirely new chapters. About the technology The idea behind Docker is simple—package just your application and its dependencies into a lightweight, isolated virtual environment called a container. Applications running inside containers are easy to install, manage, and remove. This simple idea is used in everything from creating safe, portable development environments to streamlining deployment and scaling for microservices. In short, Docker is everywhere. About the book Docker in Action, Second Edition teaches you to create, deploy, and manage applications hosted in Docker containers running on Linux. Fully updated, with four new chapters and revised best practices and examples, this second edition begins with a clear explanation of the Docker model. Then, you go hands-on with packaging applications, testing, installing, running programs securely, and deploying them across a cluster of hosts. With examples showing how Docker benefits the whole dev lifecycle, you’ll discover techniques for everything from dev-and-test machines to full-scale cloud deployments. What's inside Running software in containers Packaging software for deployment Securing and distributing containerized applications About the reader Written for developers with experience working with Linux. About the author Jeff Nickoloff and Stephen Kuenzli have designed, built, deployed, and operated highly available, scalable software systems for nearly 20 years.


The Docker Book

The Docker Book

Author: James Turnbull

Publisher: James Turnbull

Published: 2014-07-14

Total Pages: 398

ISBN-13: 098882020X

DOWNLOAD EBOOK

Updated for Docker Community Edition v18.09! Docker book designed for SysAdmins, SREs, Operations staff, Developers and DevOps who are interested in deploying the open source container service Docker. In this book, we'll walk you through installing, deploying, managing, and extending Docker. We're going to do that by first introducing you to the basics of Docker and its components. Then we'll start to use Docker to build containers and services to perform a variety of tasks. We're going to take you through the development lifecycle, from testing to production, and see where Docker fits in and how it can make your life easier. We'll make use of Docker to build test environments for new projects, demonstrate how to integrate Docker with continuous integration workflow, and then how to build application services and platforms. Finally, we'll show you how to use Docker's API and how to extend Docker yourself. We'll teach you how to: * Install Docker. * Take your first steps with a Docker container. * Build Docker images. * Manage and share Docker images. * Run and manage more complex Docker containers. * Deploy Docker containers as part of your testing pipeline. * Build multi-container applications and environments. * Learn about orchestration using Compose and Swarm for the orchestration of Docker containers and Consul for service discovery. * Explore the Docker API. * Getting Help and Extending Docker.


Docker in Practice, Second Edition

Docker in Practice, Second Edition

Author: Ian Miell

Publisher: Simon and Schuster

Published: 2019-02-06

Total Pages: 707

ISBN-13: 1638356300

DOWNLOAD EBOOK

Summary Docker in Practice, Second Edition presents over 100 practical techniques, hand-picked to help you get the most out of Docker. Following a Problem/Solution/Discussion format, you'll walk through specific examples that you can use immediately, and you'll get expert guidance on techniques that you can apply to a whole range of scenarios. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the Technology Docker's simple idea-wrapping an application and its dependencies into a single deployable container-created a buzz in the software industry. Now, containers are essential to enterprise infrastructure, and Docker is the undisputed industry standard. So what do you do after you've mastered the basics? To really streamline your applications and transform your dev process, you need relevant examples and experts who can walk you through them. You need this book. About the Book Docker in Practice, Second Edition teaches you rock-solid, tested Docker techniques, such as replacing VMs, enabling microservices architecture, efficient network modeling, offline productivity, and establishing a container-driven continuous delivery process. Following a cookbook-style problem/solution format, you'll explore real-world use cases and learn how to apply the lessons to your own dev projects. What's inside Continuous integration and delivery The Kubernetes orchestration tool Streamlining your cloud workflow Docker in swarm mode Emerging best practices and techniques About the Reader Written for developers and engineers using Docker in production. About the Author Ian Miell and Aidan Hobson Sayers are seasoned infrastructure architects working in the UK. Together, they used Docker to transform DevOps at one of the UK's largest gaming companies. Table of Contents PART 1 - DOCKER FUNDAMENTALS Discovering Docker Understanding Docker: Inside the engine room PART 2 - DOCKER AND DEVELOPMENT Using Docker as a lightweight virtual machine Building images Running containers Day-to-day Docker Configuration management: Getting your house in order PART 3 - DOCKER AND DEVOPS Continuous integration: Speeding up your development pipeline Continuous delivery: A perfect fit for Docker principles Network simulation: Realistic environment testing without the pain PART 4 - ORCHESTRATION FROM A SINGLE MACHINE TO THE CLOUD A primer on container orchestration The data center as an OS with Docker Docker platforms PART 5 - DOCKER IN PRODUCTION Docker and security Plain sailing: Running Docker in production Docker in production: Dealing with challenges


Docker on Windows

Docker on Windows

Author: Elton Stoneman

Publisher: Packt Publishing Ltd

Published: 2017-07-13

Total Pages: 352

ISBN-13: 1785288423

DOWNLOAD EBOOK

Learn how to run new and old Windows applications in Docker containers. About This Book Package traditional .NET Frameworks apps and new .NET Core apps as Docker images, and run them in containers for increased efficiency, portability, and security Design and implement distributed applications that run across connected containers, using enterprise-grade open source software from public Docker images Build a full Continuous Deployment pipeline for a .NET Framework application, and deploy it to a highly-available Docker swarm running in the cloud Who This Book Is For If you want to modernize an old monolithic application without rewriting it, smooth the deployment to production, or move to DevOps or the cloud, then Docker is the enabler for you. This book gives you a solid grounding in Docker so you can confidently approach all of these scenarios. What You Will Learn Comprehend key Docker concepts: images, containers, registries, and swarms Run Docker on Windows 10, Windows Server 2016, and in the cloud Deploy and monitor distributed solutions across multiple Docker containers Run containers with high availability and fail-over with Docker Swarm Master security in-depth with the Docker platform, making your apps more secure Build a Continuous Deployment pipeline by running Jenkins in Docker Debug applications running in Docker containers using Visual Studio Plan the adoption of Docker in your own organization In Detail Docker is a platform for running server applications in lightweight units called containers. You can run Docker on Windows Server 2016 and Windows 10, and run your existing apps in containers to get significant improvements in efficiency, security, and portability. This book teaches you all you need to know about Docker on Windows, from 101 to deploying highly-available workloads in production. This book takes you on a Docker journey, starting with the key concepts and simple examples of how to run .NET Framework and .NET Core apps in Windows Docker containers. Then it moves on to more complex examples—using Docker to modernize the architecture and development of traditional ASP.NET and SQL Server apps. The examples show you how to break up monoliths into distributed apps and deploy them to a clustered environment in the cloud, using the exact same artifacts you use to run them locally. To help you move confidently to production, it then explains Docker security, and the management and support options. The book finishes with guidance on getting started with Docker in your own projects, together with some real-world case studies for Docker implementations, from small-scale on-premises apps to very large-scale apps running on Azure. Style and approach Using a step-by-step approach, this book shows you how to use Docker on Windows. It includes practical examples and real-world technical and business scenarios that will help you effectively implement Docker in your environment.There are over 50 examples of Dockerized applications, using C# .NET projects as the source and packaging them into Docker images.


Deployment with Docker

Deployment with Docker

Author: Srdjan Grubor

Publisher: Packt Publishing Ltd

Published: 2017-11-22

Total Pages: 287

ISBN-13: 1786463229

DOWNLOAD EBOOK

A practical guide to rapidly and efficiently mastering Docker containers, along with tips and tricks learned in the field. About This Book Use Docker containers, horizontal node scaling, modern orchestration tools (Docker Swarm, Kubernetes, and Mesos) and Continuous Integration/Continuous Delivery to manage your infrastructure. Increase service density by turning often-idle machines into hosts for numerous Docker services. Learn what it takes to build a true container infrastructure that is scalable, reliable, and resilient in the face of increased complexities from using container infrastructures. Find out how to identify, debug, and mitigate most real-world, undocumented issues when deploying your own Docker infrastructure. Learn tips and tricks of the trade from existing Docker infrastructures running in production environments. Who This Book Is For This book is aimed at system administrators, developers, DevOps engineers, and software engineers who want to get concrete, hands-on experience deploying multi-tier web applications and containerized microservices using Docker. This book is also for anyone who has worked on deploying services in some fashion and wants to take their small-scale setups to the next level (or simply to learn more about the process). What You Will Learn Set up a working development environment and create a simple web service to demonstrate the basics Learn how to make your service more usable by adding a database and an app server to process logic Add resilience to your services by learning how to horizontally scale with a few containers on a single node Master layering isolation and messaging to simplify and harden the connectivity between containers Learn about numerous issues encountered at scale and their workarounds, from the kernel up to code versioning Automate the most important parts of your infrastructure with continuous integration In Detail Deploying Docker into production is considered to be one of the major pain points in developing large-scale infrastructures, and the documentation available online leaves a lot to be desired. With this book, you will learn everything you wanted to know to effectively scale your deployments globally and build a resilient, scalable, and containerized cloud platform for your own use. The book starts by introducing you to the containerization ecosystem with some concrete and easy-to-digest examples; after that, you will delve into examples of launching multiple instances of the same container. From there, you will cover orchestration, multi-node setups, volumes, and almost every relevant component of this new approach to deploying services. Using intertwined approaches, the book will cover battle-tested tooling, or issues likely to be encountered in real-world scenarios, in detail. You will also learn about the other supporting components required for a true PaaS deployment and discover common options to tie the whole infrastructure together. At the end of the book, you learn to build a small, but functional, PaaS (to appreciate the power of the containerized service approach) and continue to explore real-world approaches to implementing even larger global-scale services. Style and approach This in-depth learning guide shows you how to deploy your applications in production using Docker (from the basic steps to advanced concepts) and how to overcome challenges in Docker-based infrastructures. The book also covers practical use-cases in real-world examples, and provides tips and tricks on the various topics.