My Account Log in

3 options

Learn Docker : fundamentals of Docker 18.x : everything you need to know about containerizing your applications and running them in production / Gabriel N. Schenker.

EBSCOhost Academic eBook Collection (North America) Available online

View online

Ebook Central Academic Complete Available online

View online

O'Reilly Online Learning: Academic/Public Library Edition Available online

View online
Format:
Book
Author/Creator:
Schenker, Gabriel Nicolas, author.
Language:
English
Subjects (All):
Application software--Development.
Application software.
Computer software--Development.
Computer software.
Computer architecture.
Open source software.
Physical Description:
1 online resource (398 pages)
Edition:
1st edition
Other Title:
Fundamentals of Docker 18.x
Place of Publication:
Birmingham ; Mumbai : Packt Publishing, 2018.
System Details:
text file
Summary:
Enhance your software deployment workflow using containers About This Book Get up-and-running with basic to advanced concepts of Docker Get acquainted with concepts such as Docker containers, Docker images, orchestrators and so on. Practical test-based approach to learning a prominent containerization tool Who This Book Is For This book is targeted at system administrators, operations engineers, DevOps engineers, and developers or stakeholders who are interested in getting started with Docker from scratch. No prior experience with Docker Containers is required. What You Will Learn Containerize your traditional or microservice-based application Share or ship your application as an immutable container image Build a Docker swarm and a Kubernetes cluster in the cloud Run a highly distributed application using Docker Swarm or Kubernetes Update or rollback a distributed application with zero downtime Secure your applications via encapsulation, networks, and secrets Know your options when deploying your containerized app into the cloud In Detail Docker containers have revolutionized the software supply chain in small and big enterprises. Never before has a new technology so rapidly penetrated the top 500 enterprises worldwide. Companies that embrace containers and containerize their traditional mission-critical applications have reported savings of at least 50% in total maintenance cost and a reduction of 90% (or more) of the time required to deploy new versions of those applications. Furthermore they are benefitting from increased security just by using containers as opposed to running applications outside containers. This book starts from scratch, introducing you to Docker fundamentals and setting up an environment to work with it. Then we delve into concepts such as Docker containers, Docker images, Docker Compose, and so on. We will also cover the concepts of deployment, orchestration, networking, and security. Furthermore, we explain Docker functionalities on public clouds such as AWS. By the end of this book, you will have hands-on experience working with Docker containers and orchestrators such as SwarmKit and Kubernetes. Style and approach The simple end-to-end guide will help you learn everything about how to containerize, ship, and run both a traditional application and a modern microservice-based application on-premise or in the cloud. Downloading the example code for this book You can download the example code files for all Packt books yo...
Contents:
Cover
Title Page
Copyright and Credits
Packt Upsell
Contributors
Table of Contents
Preface
Chapter 1: What Are Containers and Why Should I Use Them?
Technical requirements
What are containers?
Why are containers important?
What's the benefit for me or for my company?
The Moby project
Docker products
Docker CE
Docker EE
The container ecosystem
Container architecture
Summary
Questions
Further reading
Chapter 2: Setting up a Working Environment
The Linux command shell
PowerShell for Windows
Using a package manager
Installing Homebrew on a Mac
Installing Chocolatey on Windows
Choosing a code editor
Docker Toolbox
Docker for Mac and Docker for Windows
Installing Docker for Mac
Installing Docker for Windows
Using docker-machine on Windows with Hyper-V
Minikube
Installing Minikube on Mac and Windows
Testing Minikube and kubectl
Chapter 3: Working with Containers
Running the first container
Starting, stopping, and removing containers
Running a random quotes container
Listing containers
Stopping and starting containers
Removing containers
Inspecting containers
Exec into a running container
Attaching to a running container
Retrieving container logs
Logging drivers
Using a container-specific logging driver
Advanced topic - changing the default logging driver
Anatomy of containers
Architecture
Namespaces
Control groups (cgroups)
Union filesystem (UnionFS)
Container plumbing
Runc
Containerd
Chapter 4: Creating and Managing Container Images
What are images?
The layered filesystem
The writable container layer
Copy-on-write
Graph drivers.
Creating images
Interactive image creation
Using Dockerfiles
The FROM keyword
The RUN keyword
The COPY and ADD keywords
The WORKDIR keyword
The CMD and ENTRYPOINT keywords
A complex Dockerfile
Building an image
Multistep builds
Dockerfile best practices
Saving and loading images
Sharing or shipping images
Tagging an image
Image namespaces
Official images
Pushing images to a registry
Chapter 5: Data Volumes and System Management
Creating and mounting data volumes
Modifying the container layer
Creating volumes
Mounting a volume
Removing volumes
Sharing data between containers
Using host volumes
Defining volumes in images
Obtaining Docker system information
Listing resource consumption
Pruning unused resources
Pruning containers
Pruning images
Pruning volumes
Pruning networks
Pruning everything
Consuming Docker system events
Chapter 6: Distributed Application Architecture
What is a distributed application architecture?
Defining the terminology
Patterns and best practices
Loosely coupled components
Stateful versus stateless
Service discovery
Routing
Load balancing
Defensive programming
Retries
Logging
Error handling
Redundancy
Health checks
Circuit breaker pattern
Running in production
Tracing
Monitoring
Application updates
Rolling updates
Blue-green deployments
Canary releases
Irreversible data changes
Rollback
Chapter 7: Single-Host Networking
The container network model
Network firewalling
The bridge network
The host network
The null network.
Running in an existing network namespace
Port management
Chapter 8: Docker Compose
Demystifying declarative versus imperative
Running a multi-service app
Scaling a service
Building and pushing an application
Chapter 9: Orchestrators
What are orchestrators and why do we need them?
The tasks of an orchestrator
Reconciling the desired state
Replicated and global services
Scaling
Self-healing
Zero downtime deployments
Affinity and location awareness
Security
Secure communication and cryptographic node identity
Secure networks and network policies
Role-based access control (RBAC)
Secrets
Content trust
Reverse uptime
Introspection
Overview of popular orchestrators
Kubernetes
Docker Swarm
Apache Mesos and Marathon
Amazon ECS
Microsoft ACS
Chapter 10: Introduction to Docker Swarm
Swarm nodes
Swarm managers
Swarm workers
Stacks, services, and tasks
Services
Task
Stack
Multi-host networking
Creating a Docker Swarm
Creating a local single node swarm
Creating a local swarm in VirtualBox or Hyper-V
Using Play with Docker (PWD) to generate a Swarm
Creating a Docker Swarm in the cloud
Deploying a first application
Creating a service
Inspecting the service and its tasks
Logs of a service
Deleting a service or a stack
Deploying a multi-service stack
The swarm routing mesh
Chapter 11: Zero Downtime Deployments and Secrets
Zero downtime deployment
Popular deployment strategies
Rolling updates.
Health checks
Creating secrets
Using a secret
Simulating secrets in a development environment
Secrets and legacy applications
Updating secrets
Chapter 12: Introduction to Kubernetes
Kubernetes master nodes
Cluster nodes
Introduction to Minikube
Kubernetes support in Docker for Desktop
Pods
Comparing Docker container and Kubernetes pod networking
Sharing the network namespace
Pod life cycle
Pod specification
Pods and volumes
Kubernetes ReplicaSet
ReplicaSet specification
Kubernetes deployment
Kubernetes service
Context-based routing
Comparing SwarmKit with Kubernetes
Chapter 13: Deploying, Updating, and Securing an Application with Kubernetes
Deploying the web component
Deploying the database
Streamlining the deployment
Blue-green deployment
Kubernetes secrets
Manually defining secrets
Creating secrets with kubectl
Using secrets in a pod
Secret values in environment variables
Chapter 14: Running a Containerized App in the Cloud
Deploying our application into AWS ECS
Introduction to ECS
Creating a Fargate ECS cluster of AWS
Authoring a task definition
Running a task in ECS
Modifying the task definition
Adding the database component to the application
Deploying and using Docker EE on AWS
Provisioning the infrastructure
Installing Docker
Installing Docker UCP
Remote admin the UCP cluster
Deploying to Docker Swarm.
Deploying to Kubernetes
A short peek into Azure's container offerings
A short peek into Google's container offerings
Assessment
Other Books You May Enjoy
Index.
Notes:
Includes bibliographical references.
Description based on print version record.
OCLC:
1034623394

The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.

Find

Home Release notes

My Account

Shelf Request an item Bookmarks Fines and fees Settings

Guides

Using the Find catalog Using Articles+ Using your account