0%

Book Description

Develop and build your Docker images and deploy your Docker containers securely.

Key Features

  • Learn Docker installation on different types of OS
  • Get started with developing Docker images
  • Use Docker with your Jenkins CI/CD system

Book Description

Docker is an open source software platform that helps you with creating, deploying, and running your applications using containers. This book is your ideal introduction to Docker and containerization.

You will learn how to set up a Docker development environment on a Linux, Mac, or Windows workstation, and learn your way around all the commands to run and manage your Docker images and containers.

You will explore the Dockerfile and learn how to build your own enterprise-grade Docker images. Then you will learn about Docker networks, Docker swarm, and Docker volumes, and how to use these features with Docker stacks in order to define, deploy, and maintain highly-scalable, fault-tolerant multi-container applications.

Finally, you will learn how to leverage Docker with Jenkins to automate the building of Docker images and the deployment of Docker containers. By the end of this book, you will be well prepared when it comes to using Docker for your next project.

What you will learn

  • Set up your Docker workstation on various platforms
  • Utilize a number of Docker commands with parameters
  • Create Docker images using Dockerfiles
  • Learn how to create and use Docker volumes
  • Deploy multi-node Docker swarm infrastructure
  • Create and use Docker local and remote networks
  • Deploy multi-container applications that are HA and FT
  • Use Jenkins to build and deploy Docker images

Who this book is for

This guide is for anyone who needs to make a quick decision about using Docker for their next project. It is for developers who want to get started using Docker right away.

Table of Contents

  1. Title Page
  2. Copyright and Credits
    1. Docker Quick Start Guide
  3. Dedication
  4. About Packt
    1. Why subscribe?
    2. Packt.com
  5. Foreword
  6. Contributors
    1. About the author
    2. About the reviewers
    3. Packt is searching for authors like you
  7. Preface
    1. Who this book is for
    2. What this book covers
    3. To get the most out of this book
      1. Download the example code files
      2. Code in action
      3. Conventions used
    4. Get in touch
      1. Reviews
  8. Setting up a Docker Development Environment
    1. Technical requirements
    2. Setting up your Docker development environment
      1. Installing Docker on a Linux workstation
        1. Installing Docker on a CentOS workstation
          1. Installing Docker CE via the Docker Repository
          2. Installing Docker CE manually using a downloaded RPM
          3. Installing Docker CE by running convenience scripts
          4. Post-install steps you might want to consider
        2. Installing Docker on an Ubuntu workstation
          1. Installing Docker CE via the Docker Repository
          2. Installing Docker CE manually using a DEB package
          3. Installing Docker CE by running convenience scripts
          4. Post-install steps you might want to consider
      2. Installing Docker on a Windows workstation
        1. Post-install steps you might want to consider
          1. Installing Kitematic
          2. Setting up DockerCompletion for PowerShell 
      3. Installing Docker on an OS X workstation
        1. Post-install steps you might want to consider
          1. Installing Kitematic
          2. Installing Docker command-line completion
      4. References
    3. What differences to watch out for between OSes
    4. Summary
      1. References
  9. Learning Docker Commands
    1. Technical requirements
    2. Information about command syntax
    3. The version command
    4. The Docker run command
      1. The list container command
      2. The remove container command
      3. The stop container command
      4. The container logs command
      5. The container top command
      6. The container inspect command
      7. The container stats command
      8. The container attach command
      9. The container exec command
      10. The container commit command
      11. Back to the Docker run command
    5. Summary
      1. References
  10. Creating Docker Images
    1. Technical requirements
    2. What is a Dockerfile?
    3. The FROM instruction
    4. The LABEL instruction
    5. The COPY instruction
    6. The ADD instruction
      1. The difference between COPY and ADD
    7. The ENV instruction
    8. The ARG instruction
      1. The difference between ENV and ARG
    9. The USER instruction
    10. The WORKDIR instruction
    11. The VOLUME instruction
    12. The EXPOSE instruction
    13. The RUN instruction
    14. The CMD instruction
    15. The ENTRYPOINT instruction
      1. The difference between CMD and ENTRYPOINT
    16. The HEALTHCHECK instruction
    17. The ONBUILD instruction
    18. The STOPSIGNAL instruction
    19. The SHELL instruction
    20. The Docker image build command
      1. Parser Directives
      2. The build context
      3. The .dockerignore file
    21. Summary
      1. References
  11. Docker Volumes
    1. Technical requirements
    2. What is a Docker volume?
      1. References
    3. Creating Docker volumes
      1. References
    4. Removing volumes
      1. References
    5. Sharing data between containers with data volume containers
      1. References
    6. Summary
  12. Docker Swarm
    1. Technical requirements
    2. What is Docker swarm?
      1. References
    3. How to set up a Docker swarm cluster
      1. docker swarm init
      2. docker swarm join-token
      3. docker swarm join
      4. docker swarm ca
      5. docker swarm unlock
      6. docker swarm unlock-key
      7. docker swarm update
      8. docker swarm leave
      9. References
    4. Managers and workers
      1. References
    5. Swarm services
      1. References
    6. Accessing container applications in a swarm
      1. References
    7. Summary
  13. Docker Networking
    1. Technical requirements
    2. What is a Docker network?
      1. References
    3. Built-in (local) Docker networks
      1. References
    4. Third-party (remote) network drivers
      1. References
    5. Creating Docker networks
      1. References
    6. Free networking features
      1. References
    7. Which Docker network driver should I use?
    8. Summary
  14. Docker Stacks
    1. Technical requirements
    2. Understanding the use of Docker stacks
      1. References
    3. How to create and use a compose YAML files for Stacks
    4. The rest of the stack commands
    5. Best practices for scaling a stack application
      1. References
    6. Summary
  15. Docker and Jenkins
    1. Technical requirements
    2. Using Jenkins to build Docker images
      1. References
    3. Setting up a Dockerized Jenkins server
      1. References
    4. Building Docker images inside of a Dockerized Jenkins server
      1. References
    5. Using Docker containers for your Jenkins build nodes
      1. Building the Docker image
      2. Pushing the new image to a Docker registry
      3. Turning off the default Jenkins build agents
      4. Installing the Docker plugin for Jenkins
      5. Creating a new Cloud to enable our Dockerized build agents
      6. Testing our new build agents
    6. Building, testing, and pushing Docker images inside Dockerized build nodes
    7. Summary
  16. Other Books You May Enjoy
    1. Leave a review - let other readers know what you think
3.137.215.0