Index
A
- advanced networking
- about / Advanced networking
- static host configuration / Static host configuration
- DNS configuration / DNS configuration
- overlay networks / Overlay networks
- Docker built-in network mappings / Docker built-in network mappings
- Docker communication ports / Docker communication ports
- advanced security
- about / Advanced security
- Docker socket, mounting into container / Mounting the Docker socket into the container
- host security scans / Host security scans
- read-only containers / Read-only containers
- privileged mode, versus --cap-add / Privileged mode versus --cap-add and --cap-drop
- privileged mode, versus --cap-drop / Privileged mode versus --cap-add and --cap-drop
- Alpine Linux
- Amazon EC2 AMI Locator
- Amazon Machine Image (AMI)
- about / Usage, Usage
- building / Building the AMI
- Amazon Web Service (AWS)
- setup / Amazon Web Services setup
- URL / Amazon Web Services setup
- account, creating / Creating an account
- references / Creating an account, The road to automated infrastructure deployment
- API keys, obtaining / Getting API keys
- API keys, using / Using the API keys
- deployments to / Deployments to AWS
- automated infrastructure deployment / The road to automated infrastructure deployment
- deployment, executing / Running the deployment and tear-down playbooks
- tear-down playbooks, executing / Running the deployment and tear-down playbooks
- AMI builder
- URL / Usage
- Ansible
- installation / Installation
- basics / Basics
- usage / Usage
- references / Usage
- URL / Usage
- Ansible module-specific documentation
- references / Usage
- Apache Kafka
- URL / Container messaging
- Apache Marathon / Apache Mesos/Marathon
- Apache Mesos / Apache Mesos/Marathon
- application servers / An overview
- Atomicity, Consistency, Isolation, and Durability (ACID) / An overview
- Availability Zones (AZ) / Maintaining quorums
- AWS CLI
- URL / Using the API keys
B
- Basically Available, Soft state, Eventual consistency (BASE) / An overview
- bin-packing problem
- URL / RAM limits
- bind mounts
- about / Bind mounts
- read-only bind mounts / Read-only bind mounts
- blue-green deployments / Blue-green deployments
- blue-turquoise-green deployment / Blue-turquoise-green deployments
- bull
C
- cloud-based offerings
- references / Cloud-based offerings
- ClusterHQ
- URL / Relocatable volumes
- Command-line Interface (CLI) / Docker's place
- Community Edition (CE) / Installing Docker
- competitors
- about / The competition
- rkt / rkt
- system-level virtualization / System-level virtualization
- desktop application-level virtualizations / Desktop application-level virtualizations
- Configuration Management (CM)
- about / Configuration management
- references / Configuration management
- Ansible / Ansible
- HashiCorp Packer / HashiCorp Packer
- containerization
- considering / When should containerization be considered?
- container messaging / Container messaging
- container orchestration
- about / Container orchestration
- node / Container orchestration
- service / Container orchestration
- task / Container orchestration
- scaling / Container orchestration
- manager node / Container orchestration
- worker node / Container orchestration
- state reconciliation / State reconciliation
- Docker Swarm / Docker Swarm
- Kubernetes / Kubernetes
- Apache Mesos/Marathon / Apache Mesos/Marathon
- cloud-based offerings / Cloud-based offerings
- containers
- overview / The what and why of containers
- about / Introduction to Docker containers
- debugging / Debugging containers
- exploring / Seeing what the container sees
- creating / A container more practical
- extending, FROM used / A container more practical
- patches, including / Ensuring the latest patches are included
- custom NGINX configuration, applying / Applying our custom NGINX configuration
- building / Building and running
- executing / Building and running
- security, layering with limited users / Container security layering with limited users
- Docker socket, mounting / Mounting the Docker socket into the container
- Continuous Delivery (CD)
- about / Privileged mode versus --cap-add and --cap-drop, Continuous integration/Continuous delivery
- resource considerations / Resource considerations
- circular dependency, deploying / First-deploy circular dependency
- usage / Further generic CI/CD uses
- Continuous Integration (CI)
- about / Privileged mode versus --cap-add and --cap-drop, Continuous integration/Continuous delivery
- resource considerations / Resource considerations
- circular dependency, deploying / First-deploy circular dependency
- usage / Further generic CI/CD uses
- copy-on-write (CoW) / How images are layered
- CoreOS
- URL / Host security scans
- cpu_shares.sh
- URL / CPU limits
- custom NGINX configuration
- applying / Applying our custom NGINX configuration
D
- database / An overview
- Database as a Service (DBaaS) / When should containerization be considered?
- DC/OS solution
- URL / Apache Mesos/Marathon
- debugging
- about / Advanced debugging
- container's process space, attaching / Attaching to a container's process space
- Docker daemon / Debugging the Docker daemon
- desktop application-level virtualizations / Desktop application-level virtualizations
- developer workflow / The developer workflow
- DHCP flags
- URL / DNS configuration
- DNS configuration
- about / DNS configuration
- URL / DNS configuration
- Docker
- installing / Installing Docker
- URL, for installation / Installing Docker
- URL / A container more practical
- Docker-in-Docker (DinD) / Privileged mode versus --cap-add and --cap-drop
- Docker Bench for Security / Host security scans
- Docker Cloud
- Docker commands / Docker commands
- Docker deployment / The ideal Docker deployment
- Docker Engine API
- Dockerfile
- about / Our first Dockerfile
- cache, breaking / Breaking the cache
- URL / Dockerfile commands, Persisting the writable CoW layer(s)
- Dockerfile commands / Dockerfile commands
- Docker Hub
- Docker image
- about / Docker image internals
- layering / How images are layered
- writable COW layer(s), persisting / Persisting the writable CoW layer(s)
- registry, executing / Running your own image registry
- storage driver / Underlying storage driver
- Docker storage, cleaning up / Cleanup of Docker storage
- Docker Registry / First-deploy circular dependency
- docker run
- URL / CPU limits
- Docker stack YAML files
- URL / The Docker stack
- Docker Swarm
- about / Docker Swarm
- using, to orchestrate words service / Using Swarm to orchestrate our words service
- Docker Swarm cluster
- setting up / Setting up a Docker Swarm cluster
- initializing / Initializing a Docker Swarm cluster
- services, deploying / Deploying services
- cleaning up / Cleaning up
- Docker Swarm orchestration
- application server / The application server
- index.js / index.js
- web server / The web server
- start_nginx.sh / The web server
- dockerfile / The web server
- database / Database
- deploying / Deploying it all
- Docker stack / The Docker stack
- cleaning up / Clean up
- domain-specific language (DSL) / Ansible
- Domain Name System (DNS)
E
- Elastic Block Store (EBS) / Usage, Choosing the right AMI base image
- Elastic Compute Cloud (EC2) / Usage, Choosing the right AMI base image
- Enterprise Edition (EE) / Installing Docker
- environmental variables
- setting, with ENV / Setting environment variables with ENV
- ephemeral ports / Ephemeral ports
- Express
F
- First-In, First-Out (FIFO) / Container messaging
- fork network
- URL / Relocatable volumes
G
- Google Trends
- URL / Popularity
- Graphical User Interfaces (GUIs) / Desktop application-level virtualizations
- group ID (GID)
- security considerations, with volumes / UID/GID and security considerations with volumes
H
- HashiCorp Packer
- about / HashiCorp Packer
- URL / HashiCorp Packer
- installation / Installation
- references / Installation
- usage / Usage
- AMI base image, selecting / Choosing the right AMI base image
- AMI, building / Building the AMI
- high availability (HA) / Maintaining quorums
- high availability pipelines
- about / High availability pipelines
- container messaging / Container messaging
- messaging queue, implementing / Implementing our own messaging queue
K
- Key Performance Indicators (KPIs) / Monitoring
- Kubernetes / Kubernetes
L
- LABEL / Labels
- Linux capability identifiers
- Long Term Support (LTS) / Installing Docker
M
- messaging queue
- implementing / Implementing our own messaging queue
- package.json / package.json
- index.js / index.js
- dockerfile / Dockerfile
- module-specific documentation
- references / Usage
- modules
- URL / Ansible
- MongoDB driver
- monitoring
- about / Monitoring
- node RAM utilization / Monitoring
- node CPU utilization / Monitoring
- node unexpected terminations / Monitoring
- service unexpected terminations / Monitoring
- queue sizes, messaging / Monitoring
- connection throughputs / Monitoring
- service latencies / Monitoring
- kernel panics / Monitoring
- multi-service containers / Multi-service containers
N
- named volumes / Named volumes
- Network Address Translation (NAT) / Netfilter tweaks
- networking / Introducing Docker networking
- next-gen technologies
- evaluating / Evaluating next-gen technologies
- requisites / Technological needs
- popularity / Popularity
- technical competency / A team's technical competency
- NGINX
- Node
- node-local storage
- about / Node-local storage
- bind mounts / Bind mounts
- named volumes / Named volumes
- relocatable volumes / Relocatable volumes
- relocatable volume sync loss / Relocatable volume sync loss
- node automation
- about / Node automation
- reactive auto-scaling / Reactive auto-scaling
- Predictive auto-scaling / Predictive auto-scaling
O
- orchestration
- implementing / Implementing orchestration
- Docker Swarm cluster, setting up / Setting up a Docker Swarm cluster
- Swarm, using to orchestrate word service / Using Swarm to orchestrate our words service
- Out of Memory (OOM)
- URL / RAM limits
- about / Resource considerations
- overlay networks / Overlay networks
P
- persistent storage
- about / Persistent storage
- node-local storage / Node-local storage
- pitfall avoidance
- about / Pitfall avoidance
- ulimits / ulimits
- file descriptors / Max file descriptors
- socket buffers / Socket buffers
- ephemeral ports / Ephemeral ports
- Netfilter tweaks / Netfilter tweaks
- multi-service containers / Multi-service containers
- Platform as a Service (PaaS) / The what and why of containers
- Pluggable Authentication Module (PAM) / ulimits
- Portainer
- URL / Docker Swarm
- ports
- exposing / Exposing ports
- predictive scaling / Predictive auto-scaling
- principle of least privilege
Q
- quorums
- maintaining / Maintaining quorums
R
- RabbitMQ
- URL / Container messaging
- RAS syndrome
- URL / Usage
- read-only containers / Read-only containers
- relocatable volumes / Relocatable volumes
- REX-Ray
- URL / Relocatable volumes
- Rocket (rkt) / rkt
S
- Salted SHA (SSHA) / Authentication
- ScatterHQ
- references / Relocatable volumes
- service
- creating / Service from scratch
- LABEL / Labels
- environment variables, setting with ENV / Setting environment variables with ENV
- ports, exposing / Exposing ports
- container security, layering with limited users / Container security layering with limited users
- VOLUME directive / VOLUMEs and data that lives outside of the container
- working directory, setting / Setting the working directory
- files, adding from internet / Adding files from the internet
- current user, modifying / Changing the current user
- implementing / Putting it all together, The implementation, Running it all together
- writing / Writing a real service
- overview / An overview
- building / What we are going to build
- web server / Web server
- database / The database
- application server / The application server
- main application logic / The main application logic
- launching / Launching
- testing / Testing
- implementation, limitations / Limitations and issues with our implementation
- implementation, issues / Limitations and issues with our implementation
- critical issues, fixing / Fixing the critical issues
- local volume, using / Using a local volume
- credentials, generating at runtime / Generating the credentials at runtime
- Service Discovery
- about / Introducing Docker networking, Service discovery
- Docker networking, recap / A recap of Docker networking
- exploring / Service Discovery in depth
- client-side discovery pattern / Client-side discovery pattern
- server-side discovery pattern / Server-side discovery pattern
- hybrid systems / Hybrid systems
- (un)available options, picking / Picking the (un)available options
- Service Level Agreement (SLA) / Persistent storage
- service resources
- limiting / Limiting service resources
- RAM limits / RAM limits
- CPU limits / CPU limits
- setuid flag
- Shipyard
- URL / Docker Swarm
- socket buffers / Socket buffers
- soft / ulimits
- Solid State Devices (SSD) / Choosing the right AMI base image
- state reconciliation / State reconciliation
- static host configuration / Static host configuration
- storage driver
- about / Underlying storage driver
- aufs / aufs
- btrfs / btrfs / zfs
- zfs / btrfs / zfs
- overlay / overlay and overlay2
- overlay2 / overlay and overlay2
- devicemapper / devicemapper
- supervisord
- URL / Multi-service containers
- system-level virtualization / System-level virtualization
- systemd services
- references / ulimits
T
- TensorFlow
- references / Predictive auto-scaling
- time-to-live (TTL) / Server-side discovery pattern
- Transport Layer Security (TLS) / Installing Docker
U
- user ID (UID)
- security considerations, with volumes / UID/GID and security considerations with volumes
V
- Virtual Private Cloud (VPC) / An overview, Cloud-based offerings
- Virtual Private Network (VPN) / An overview
W
- web server
- about / Web server
- authentication / Authentication
Y
- YAML structure
- URL / Usage
Z
- zero-downtime deployments
- about / Zero-downtime deployments
- service restarts, rolling / Rolling service restarts
- blue-green deployments / Blue-green deployments
- blue-turquoise-green deployments / Blue-turquoise-green deployments