Search icon CANCEL
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Docker for Developers

You're reading from   Docker for Developers Develop and run your application with Docker containers using DevOps tools for continuous delivery

Arrow left icon
Product type Paperback
Published in Sep 2020
Publisher Packt
ISBN-13 9781789536058
Length 468 pages
Edition 1st Edition
Tools
Arrow right icon
Authors (3):
Arrow left icon
Richard Bullington-McGuire Richard Bullington-McGuire
Author Profile Icon Richard Bullington-McGuire
Richard Bullington-McGuire
Michael Schwartz Michael Schwartz
Author Profile Icon Michael Schwartz
Michael Schwartz
Andrew K. Dennis Andrew K. Dennis
Author Profile Icon Andrew K. Dennis
Andrew K. Dennis
Arrow right icon
View More author details
Toc

Table of Contents (21) Chapters Close

Preface 1. Section 1: An Introduction to Docker – Containers and Local Development
2. Chapter 1: Introduction to Docker FREE CHAPTER 3. Chapter 2: Using VirtualBox and Docker Containers for Development 4. Chapter 3: Sharing Containers Using Docker Hub 5. Chapter 4: Composing Systems Using Containers 6. Section 2: Running Docker in Production
7. Chapter 5: Alternatives for Deploying and Running Containers in Production 8. Chapter 6: Deploying Applications with Docker Compose 9. Chapter 7: Continuous Deployment with Jenkins 10. Chapter 8: Deploying Docker Apps to Kubernetes 11. Chapter 9: Cloud-Native Continuous Deployment Using Spinnaker 12. Chapter 10: Monitoring Docker Using Prometheus, Grafana, and Jaeger 13. Chapter 11: Scaling and Load Testing Docker Applications 14. Section 3: Docker Security – Securing Your Containers
15. Chapter 12: Introduction to Container Security 16. Chapter 13: Docker Security Fundamentals and Best Practices 17. Chapter 14: Advanced Docker Security – Secrets, Secret Commands, Tagging, and Labels 18. Chapter 15: Scanning, Monitoring, and Using Third-Party Tools 19. Chapter 16: Conclusion – End of the Road, but not the Journey 20. Other Books You May Enjoy

Implementing a sample microservices application

We can use the Mosca, MongoDB, and Redis containers, along with a couple of custom containers, to implement a simple but complete application:

Figure 3.3 – Diagram of our sample microservices application

Figure 3.3 – Diagram of our sample microservices application

The publisher and subscriber will communicate with each other using MQTT. The subscriber will listen for a handful of MQTT topics that direct it to operate on or retrieve information from the MongoDB and Redis databases. The publisher will send these MQTT topics and print the responses.

The publisher will be based on Node.js version 11 and the subscriber will be based on Node.js version 12. Without Docker or a virtual machine, running two Node.js versions on the same machine concurrently requires the use of Node Version Manager (nvm) and having multiple versions of Node.js installed on your workstation. Docker containers make it simple to use as many versions as you need and to package the version...

lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at £16.99/month. Cancel anytime