Docker

1
E-book

ASP.NET Core 2.0. Wprowadzenie

Jason De Oliveira, Michel Bruchet

Framework ASP.NET Core 2.0 stanowi odpowiedź Microsoftu na potrzeby programistów, które z kolei zmieniają się wraz z rynkiem IT. Klienci wymagają od aplikacji zgodności z różnymi standardami, wysokiej efektywności i skalowalności, a czas wyprodukowania i wdrożenia nowego rozwiązania ma być jak najkrótszy. Do takiej pracy potrzeba narzędzi o odpowiedniej produktywności, rozszerzalności i elastyczności. Dzięki uwzględnieniu tych wyśrubowanych kryteriów Microsoft stworzył platformę ASP.NET Core pozwalającą na tworzenie, kompilację i uruchamianie aplikacji w dowolnym środowisku. Można też korzystać z zewnętrznych bibliotek i z najbardziej aktualnych wzorców projektowych. Opanowanie tego złożonego narzędzia pozwoli zająć programiście znakomitą pozycję wyjściową do tworzenia wydajnych i nowoczesnych aplikacji internetowych. Ta książka jest przeznaczona dla programistów chcących budować nowoczesne aplikacje internetowe na platformie ASP.NET Core 2.0. W przystępny i zrozumiały sposób, na praktycznych przykładach wyjaśniono tu możliwości ASP.NET Core 2.0. Większość kluczowych funkcji została opisana z wykorzystaniem zwięzłych przykładów. Dzięki jasnym instrukcjom krok po kroku możliwe jest niemal natychmiastowe rozpoczęcie programowania. W książce omówiono tworzenie responsywnych aplikacji internetowych, stosowanie w praktyce modelu MVC, wdrażanie aplikacji z wykorzystaniem technologii chmury, a także monitorowanie pracy oprogramowania w środowisku produkcyjnym i reagowanie na pojawiające się problemy. W tej książce między innymi: Funkcjonalność i ograniczenia ASP.NET Core 2.0 oraz struktura i koncepcji aplikacji Przygotowanie i konfiguracja środowiska pracy Tworzenie aplikacji MVC i aplikacji Web API Praca z bazą danych z użyciem zaawansowanych funkcji programu Entity Framework Core 2 Zabezpieczanie aplikacji i jej testowanie Hosting i wdrażanie aplikacji lokalnie oraz w chmurze ASP.NET Core 2.0. Podejmij wyzwanie!

2
E-book

Bezpieczeństwo kontenerów w DevOps. Zabezpieczanie i monitorowanie kontenerów Docker

Jose Manuel Ortega Candel

DevOps jest innowacyjną metodyką prowadzenia projektów, w której wyjątkowe znaczenie ma integracja zespołów programistów i administratorów systemów. Taki sposób rozwijania aplikacji wydaje się szczególnie atrakcyjny w odniesieniu do aplikacji kontenerowych. Technologia kontenerów i orkiestracji jest uważana za bardzo nowoczesną, jednak nawet w przypadku kontenerów Docker i klastrów Kubernetes kwestii bezpieczeństwa nie wolno lekceważyć. Podobnie jak w innych aplikacjach, zabezpieczanie zaczyna się podczas projektowania. O czym więc powinny pamiętać zespoły pracujące zgodnie z DevOps, aby zapewnić bezpieczeństwo swoich kontenerów? W tej książce pokazano związek między metodyką DevOps a praktyką dotyczącą kontenerów Docker i klastrów Kubernetes z perspektywy bezpieczeństwa, monitoringu i zarządzania. Przedstawiono dobre praktyki tworzenia obrazów kontenerów Docker, a także zasady bezpieczeństwa hostów, na których są uruchamiane kontenery, i wszystkich komponentów. Poruszono takie zagadnienia jak statyczna analiza zagrożeń obrazów Docker, podpisywanie obrazów za pomocą Docker Content Trust oraz umieszczanie ich w rejestrze Docker. Opisano też techniki zabezpieczania platformy Kubernetes. Ponadto znalazł się tutaj opis narzędzi do zarządzania kontenerami i aplikacjami, jak również monitorowania aplikacji kontenerowych i tworzenia sieci w platformie Docker. Najciekawsze zagadnienia: gruntowne wprowadzenie do metodyki DevOps czym są platformy kontenerowe: Docker, Kubernetes, Swarm, OpenShift zagrożenia kontenerów i obrazów narzędzia do audytu bezpieczeństwa i zabezpieczania aplikacji kontenerowych zarządzanie kontenerami i ich monitorowanie za pomocą narzędzi: cAdvisor, Sysdig, Portainer i Rancher Niezawodność DevOps to także bezpieczne wdrażanie kontenerów Docker!

3
E-book

Ciągłe dostarczanie oprogramowania w języku Java. Najlepsze narzędzia i praktyki wdrażania kodu

Daniel Bryant, Abraham Marín-Pérez

W ciągu ostatnich lat radykalnie zmieniły się wymagania i oczekiwania biznesowe wobec oprogramowania. Kluczowymi wartościami są innowacyjność, szybkość i czas wejścia na rynek. Do spełnienia tych wymagań konieczne okazały się nowe architektury i modele tworzenia kodu. Metodyka ciągłego dostarczania, zwanego też CD, polega na tworzeniu w krótkich cyklach wartościowych i solidnych produktów. Funkcjonalności są dodawane w małych krokach, a oprogramowanie można wydawać niezawodnie w dowolnej chwili. To sprawia, że można też szybko otrzymywać informacje zwrotne. Jednak taki sposób pracy wymaga odpowiednich ram organizacyjnych, a zespół projektowy musi przyswoić nieco inny od tradycyjnego styl pracy. Ta książka jest praktycznym przewodnikiem, dzięki któremu programiści Javy opanują techniki potrzebne do pomyślnego zastosowania metody ciągłego dostarczania. Opisano tu najlepsze zasady budowy architektury oprogramowania, automatycznej kontroli jakości, pakowania aplikacji i wdrażania ich w różnych środowiskach produkcyjnych. Szczególną uwagę poświęcono testowaniu oprogramowania: przedstawiono całą gamę metodyk testowania, opisano ich zastosowanie i znaczenie w cyklu życia aplikacji. Ciekawym elementem książki są informacje o złych praktykach i antywzorcach wraz ze wskazówkami dotyczącymi rozwiązywania tego rodzaju problemów. W tej książce między innymi: solidne podstawy ciągłego dostarczania oprogramowania migracja do ciągłego dostarczania oprogramowania narzędzia: Jenkins, PMD i FindSecBugs zasady testowania funkcjonalności i jakości oprogramowania techniki obserwacji aplikacji w środowisku produkcyjnym Java i CD: tak zdobędziesz prawdziwą przewagę!

4
E-book

Continuous Delivery with Docker and Jenkins. Create secure applications by building complete CI/CD pipelines - Second Edition

Rafał Leszko

Continuous Delivery with Docker and Jenkins, Second Edition will explain the advantages of combining Jenkins and Docker to improve the continuous integration and delivery process of an app development. It will start with setting up a Docker server and configuring Jenkins on it. It will then provide steps to build applications on Docker files and integrate them with Jenkins using continuous delivery processes such as continuous integration, automated acceptance testing, and configuration management.Moving on, you will learn how to ensure quick application deployment with Docker containers along with scaling Jenkins using Kubernetes. Next, you will get to know how to deploy applications using Docker images and testing them with Jenkins. Towards the end, the book will touch base with missing parts of the CD pipeline, which are the environments and infrastructure, application versioning, and nonfunctional testing.By the end of the book, you will be enhancing the DevOps workflow by integrating the functionalities of Docker and Jenkins.

5
E-book

Continuous Delivery with Docker and Jenkins. Create secure applications by building complete CI/CD pipelines - Third Edition

Rafał Leszko

This updated third edition of Continuous Delivery with Docker and Jenkins will explain the advantages of combining Jenkins and Docker to improve the continuous integration and delivery process of app development.You’ll start by setting up a Docker server and configuring Jenkins on it. Next, you’ll discover steps for building applications and microservices on Dockerfiles and integrating them with Jenkins using continuous delivery processes such as continuous integration, automated acceptance testing, configuration management, and Infrastructure as Code. Moving ahead, you'll learn how to ensure quick application deployment with Docker containers, along with scaling Jenkins using Kubernetes. Later, you’ll explore how to deploy applications using Docker images and test them with Jenkins. Toward the concluding chapters, the book will focus on missing parts of the CD pipeline, such as the environments and infrastructure, application versioning, and non-functional testing.By the end of this continuous integration and continuous delivery book, you’ll have gained the skills you need to enhance the DevOps workflow by integrating the functionalities of Docker and Jenkins.

6
E-book

Docker and Kubernetes for Java Developers. Scale, deploy, and monitor multi-container applications

Jarosław Krochmalski

Imagine creating and testing Java EE applications on Apache Tomcat Server or Wildfly Application server in minutes along with deploying and managing Java applications swiftly. Sounds too good to be true? But you have a reason to cheer as such scenarios are only possible by leveraging Docker and Kubernetes.This book will start by introducing Docker and delve deep into its networking and persistent storage concepts. You will then proceed to learn how to refactor monolith application into separate services by building an application and then packaging it into Docker containers. Next, you will create an image containing Java Enterprise Application and later run it using Docker. Moving on, the book will focus on Kubernetes and its features and you will learn to deploy a Java application to Kubernetes using Maven and monitor a Java application in production. By the end of the book, you will get hands-on with some more advanced topics to further extend your knowledge about Docker and Kubernetes.

7
E-book

Docker Certified Associate (DCA): Exam Guide. Enhance and validate your Docker skills by gaining Docker certification

Francisco Javier Ramírez Urea

Developers have changed their deployment artifacts from application binaries to container images, and they now need to build container-based applications as containers are part of their new development workflow. This Docker book is designed to help you learn about the management and administrative tasks of the Containers as a Service (CaaS) platform.The book starts by getting you up and running with the key concepts of containers and microservices. You'll then cover different orchestration strategies and environments, along with exploring the Docker Enterprise platform. As you advance, the book will show you how to deploy secure, production-ready, container-based applications in Docker Enterprise environments. Later, you'll delve into each Docker Enterprise component and learn all about CaaS management. Throughout the book, you'll encounter important exam-specific topics, along with sample questions and detailed answers that will help you prepare effectively for the exam.By the end of this Docker containers book, you'll have learned how to efficiently deploy and manage container-based environments in production, and you will have the skills and knowledge you need to pass the DCA exam.

8
E-book

Docker Cookbook. Over 100 practical and insightful recipes to build distributed applications with Docker - Second Edition

Ken Cochrane, Jeeva S. Chelladhurai, Neependra K Khare

Docker is an open source tool used for creating, deploying, and running applications using containers. With more than 100 self-contained tutorials, this book examines common pain points and best practices for developers building distributed applications with Docker. Each recipe in this book addresses a specific problem and offers a proven, best practice solution with insights into how it works, so that you can modify the code and configuration files to suit your needs.The Docker Cookbook begins by guiding you in setting up Docker in different environments and explains how to work with its containers and images. You’ll understand Docker orchestration, networking, security, and hosting platforms for effective collaboration and efficient deployment. The book also covers tips and tricks and new Docker features that support a range of other cloud offerings.By the end of this book, you’ll be able to package and deploy end-to-end distributed applications with Docker and be well-versed with best practice solutions for common development problems.

9
E-book

Docker Deep Dive. Harness the full potential of your applications with Docker

Nigel Poulton

Most applications, even the funky cloud-native microservices ones, need high-performance, production-grade infrastructure to run on. Having impeccable knowledge of Docker will help you to thrive in the modern cloud-first world. With this book, you’ll gain the skills you need to work with Docker and its containers.The book begins with an introduction to containers and explains its functionality and application in the real world. You’ll then get an overview of VMware, Kubernetes, and Docker and learn to install Docker on Windows, Mac, and Linux. Once you’ve understood the Ops and Dev perspective of Docker, you’ll be able to see the big picture and understand what Docker exactly does. The book then turns its attention to the more technical aspects, guiding your through practical exercises covering Docker engine, Docker images, and Docker containers. You’ll learn techniques for containerizing an app, deploying apps with Docker Compose, and managing cloud-native applications with Swarm. You’ll also build Docker networks and Docker overlay networks and handle applications that write persistent data. Finally, you’ll deploy apps with Docker stacks and secure your Docker environment.By the end of this book, you’ll be well-versed in Docker and containers and have developed the skills to create, deploy, and run applications on the cloud.

10
E-book

Docker dla praktyków. Wydanie II

Jeeva S. Chelladhurai, Vinod Singh, Pethuru Raj

Docker to platforma oparta na otwartym kodzie źródłowym. Jest dziś uważany za najważniejsze narzędzie do rozwijania aplikacji rozproszonych. Umożliwia przyspieszenie prac nad oprogramowaniem, ale również jego konfiguracją, wdrożeniem i dostarczeniem do klienta. Docker pozwala na skalowanie infrastruktury aplikacji w czasie rzeczywistym i poprawę wykorzystania zasobów. Technologia Dockera ułatwia budowę aplikacji dobrze przemyślanych, przetwarzających dane w sposób kontekstowy, rozproszonych i skupionych na konkretnym celu biznesowym. Pozwala też na uruchamianie tworzonej aplikacji na dowolnej platformie! Niniejsza książka jest przeznaczona dla programistów i osób zarządzających procesem tworzenia aplikacji. Przedstawiono tu informacje potrzebne do rozpoczęcia pracy z Dockerem, wyjaśniono też terminologię i polecenia potrzebne do zarządzania kontenerami. Opisano proces budowy i publikacji obrazów Dockera, nie zabrakło również informacji o sposobach tworzenia prywatnych repozytoriów. W książce poruszono również zagadnienia związane z orkiestracją kontenerów za pomocą narzędzia Docker Compose, debugowaniem kontenerów i zabezpieczaniem ich za pomocą modułów AppArmor i SELinux. Ciekawym elementem jest opis kilku praktycznych zastosowań platformy, dzięki czemu łatwiej uświadomić sobie przyczyny rosnącej popularności tego rozwiązania. W tej książce między innymi: rozpoczynanie pracy z Dockerem automatyczne budowanie obrazów Dockera udostępnianie danych i związane z tym problemy testowanie i debugowanie aplikacji zagadnienia bezpieczeństwa i zarządzania konfiguracją Dockera Docker — nowy wymiar rozwoju aplikacji! Jeeva S. Chelladhurai działa w branży IT od 20 lat. Specjalizuje się w DevOps i dostarczaniu rozwiązań mających postać chmury. Interesuje się centrami optymalizacji danych i rozwijaniem aplikacji za pomocą Dockera. Vinod Singh od wielu lat tworzy oprogramowanie, projektuje architekturę systemów i testuje różne rozwiązania. Jego pasją są tworzenie oprogramowania w chmurze, rozwój sztucznej inteligencji i system Linux. Dr Pethuru Raj jest głównym architektem w Reliance Jio Cloud, wcześniej był architektem infrastruktury chmury w indyjskim IBM Global Cloud Center of Excellence. W IT pracuje od ponad 17 lat, a od 8 lat zajmuje się również badaniami naukowymi.

11
E-book

Docker dla programistów. Rozwijanie aplikacji i narzędzia ciągłego dostarczania DevOps

Richard Bullington-McGuire, Michael Schwartz, Andrew K. Dennis

Docker zyskuje coraz większe uznanie programistów. Dzięki swojej niezależności od platformy kontenery pozwalają na uruchamianie kodu w różnych środowiskach, zarówno w centrach danych, jak i w chmurze. Zastosowanie kontenerów bardzo upraszcza opracowanie, testowanie, wdrażanie i skalowanie aplikacji. Pozwala też na automatyzację przepływu pracy i stałe doskonalenie aplikacji. Aby skorzystać ze wszystkich tych zalet, architekci, projektanci i programiści muszą wszechstronnie i głęboko poznać wiele różnych aspektów zarządzania środowiskiem kontenerowym. Oto wyczerpujące omówienie wszystkich zagadnień niezbędnych do tworzenia i rozwijania aplikacji w Dockerze. W książce zaprezentowano różne metody wdrażania i uruchamiania kontenerów, pokazano również, jak wykorzystuje się je w środowisku produkcyjnym. Wskazano właściwe techniki używania narzędzi Jenkins, Kubernetes i Spinnaker. Przedstawiono metody monitorowania, zabezpieczania i skalowania kontenerów za pomocą takich narzędzi jak Prometheus i Grafana. Nie zabrakło opisu wdrażania kontenerów w różnych środowiskach, między innymi w chmurowej usłudze Amazon Elastic Kubernetes Service, a także - na koniec - kwestii bezpieczeństwa Dockera i związanych z tym dobrych praktyk. W książce: gruntowne wprowadzenie do Dockera i programowania w VirtualBox tworzenie systemów z kontenerów i ich wdrażanie w środowisku produkcyjnym ciągłe wdrażanie oprogramowania skalowanie, testy obciążeniowe i zagadnienia bezpieczeństwa stosowanie zewnętrznych narzędzi: AWS, Azure, GCP i innych Docker. Wszechstronne wdrożenia w najlepszym stylu

12
E-book

Docker for Developers. Develop and run your application with Docker containers using DevOps tools for continuous delivery

Richard Bullington-McGuire, Andrew K. Dennis, Michael Schwartz

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.

13
E-book

Docker High Performance. Complete your Docker journey by optimizing your application's work?ows and performance - Second Edition

Allan Espinosa, Russ McKendrick

Docker is an enterprise-grade container platform that allows you to build and deploy your apps. Its portable format lets you run your code right from your desktop workstations to popular cloud computing providers. This comprehensive guide will improve your Docker work?ows and ensure your application's production environment runs smoothly.This book starts with a refresher on setting up and running Docker and details the basic setup for creating a Docker Swarm cluster. You will then learn how to automate this cluster by using the Chef server and cookbooks. After that, you will run the Docker monitoring system with Prometheus and Grafana, and deploy the ELK stack. You will also learn best practices for optimizing Docker images.After deploying containers with the help of Jenkins, you will then move on to a tutorial on using Apache JMeter to analyze your application's performance. You will learn how to use Docker Swarm and NGINX to load-balance your application, and how common debugging tools in Linux can be used to troubleshoot Docker containers.By the end of this book, you will be able to integrate all the optimizations that you have learned and put everything into practice in your applications.

14
E-book

Docker. Niezawodne kontenery produkcyjne. Praktyczne zastosowania. Wydanie III

Sean Kane, Karl Matthias

Docker radykalnie zmienił proces wdrażania oprogramowania. Obrazy i kontenery Dockera ułatwiają zarządzanie zależnościami, co uprościło testowanie, wdrażanie i skalowanie aplikacji. Technologia ta intensywnie się rozwija, wciąż zmieniają się dostępne narzędzia i zalecane praktyki. To wszystko sprawia, że dogłębne zrozumienie działania współczesnego Dockera nie jest trywialnym zadaniem. Dowiedz się, jak budować nowoczesne, niezawodne systemy rozproszone o wysokiej dostępności. Mihai Todor, TLCP To gruntownie zaktualizowane i uzupełnione wydanie praktycznego przewodnika po wdrażaniu i testowaniu kontenerów Dockera. Przedstawia proces przygotowania pakietu aplikacji ze wszystkimi ich zależnościami, a także jego testowania, wdrażania, skalowania i utrzymywania w środowiskach produkcyjnych. Zawiera omówienie Docker Compose i trybu Docker Swarm, opis zagadnień związanych z Kubernetes, jak również przykłady optymalizacji obrazów Dockera. W tym wydaniu zaprezentowano ponadto najlepsze praktyki i narzędzie BuildKit, opisano wsparcie obrazów wieloarchitekturowych, kontenerów rootless i uwzględniono wiele innych ważnych informacji. W książce między innymi: integracja Dockera i kontenerów linuksowych z usługami chmurowymi i Kubernetes zarządzanie kontenerami linuksowymi z poziomu wiersza poleceń tworzenie i stosowanie obrazów OCI sprawne wdrażanie aplikacji w środowiskach produkcyjnych wdrażanie kontenerów linuksowych w publicznych i prywatnych chmurach Ucz się z bezcennych praktycznych lekcji zebranych podczas wdrażania Dockera na dużą skalę! Liz Rice, Isovalent   Ta książka wykracza poza pierwsze fascynacje Dockerem i przygotuje Cię do rzeczywistych wyzwań! Kelsey Hightower, Google Cloud Platform

15
E-book

Docker on Windows. From 101 to production with Docker on Windows - Second Edition

Elton Stoneman

Docker on Windows, Second Edition teaches you all you need to know about Docker on Windows, from the 101 to running highly-available workloads in production. You’ll be guided through a Docker journey, starting with the key concepts and simple examples of .NET Framework and .NET Core apps in Docker containers on Windows. Then you’ll learn how to use Docker to modernize the architecture and development of traditional ASP.NET and SQL Server apps.The examples show you how to break up legacy monolithic applications into distributed apps and deploy them to a clustered environment in the cloud, using the exact same artifacts you use to run them locally. You’ll see how to build a CI/CD pipeline which uses Docker to compile, package, test and deploy your applications. To help you move confidently to production, you’ll learn about Docker security, and the management and support options.The book finishes with guidance on getting started with Docker in your own projects. You’ll walk through some real-world case studies for Docker implementations, from small-scale on-premises apps to very large-scale apps running on Azure.

16
E-book

Docker. Praktyczne zastosowania

Docker został zaprezentowany światu w marcu 2013 roku i praktycznie od początku wzbudza zaskakujące zainteresowanie. Narzędzie to pozwala na proste zarządzanie procesem tworzenia określonego elementu aplikacji, wdrażania go na dużą skalę w dowolnym środowisku oraz usprawniania przepływu pracy. Ma przy tym duże możliwości i łączy w sobie prostotę wdrażania aplikacji z prostotą administrowania. Jednym słowem, Docker jest niezwykle użytecznym narzędziem! Niniejsza książka jest praktycznym przewodnikiem, dzięki któremu Docker przyczyni się do sukcesu organizacji na wiele sposobów: uprości podejmowanie decyzji dotyczących architektury, ułatwi pisanie narzędzi pomocniczych, a przede wszystkim umożliwi bezproblemowe przeprowadzanie integracji kolejnych elementów aplikacji. Opisano tu, w jaki sposób za pomocą Dockera można przygotować pakiet aplikacji ze wszystkimi ich zależnościami, a następnie je testować, wdrażać, skalować oraz utrzymywać ich pracę w środowiskach produkcyjnych. W tej książce omówiono: wykorzystanie Dockera do automatyzacji i uproszczenia obsługi pakietów zasady pracy z obrazami, kontenerami i aplikacjami Dockera dołączanie do kodu aplikacji niezbędnych plików systemu operacyjnego możliwość testowania tego samego elementu aplikacji we wszystkich systemach i środowiskach oddzielenie warstwy aplikacji od warstwy sprzętowej bez poświęcania cennych zasobów zagadnienia konfiguracji sieci, koordynacji, bezpieczeństwa i zarządzania konfiguracją Dockera Docker — sposób na niezawodne zarządzanie rozwojem aplikacji!

17
E-book

Docker. Praktyczne zastosowania. Wydanie II

Sean P. Kane, Karl Matthias

Docker jest nową technologią, która radykalnie zmieniła podejście do wdrażania oprogramowania. Obrazy i kontenery Dockera upraszczają zarządzanie zależnościami, dzięki czemu testowanie, wdrażanie i skalowanie aplikacji staje się o wiele prostsze. W ciągu ostatnich lat Docker znacznie się rozwinął. Jest teraz bardzo stabilny i daje programistom wiele narzędzi do wyboru. W oczywisty sposób zwiększa to jego popularność wśród twórców dużych systemów. Niemniej zrozumieć działanie Dockera i nauczyć się wykorzystywać go w poprawny sposób - to nie jest trywialne i wymaga wysiłku. Oto kolejne - zaktualizowane i uzupełnione - wydanie praktycznego przewodnika, dzięki któremu szybko nauczysz się korzystać z Dockera. Wyjaśniono tu podstawy jego działania, pokazano praktyczne techniki wdrażania i testowania kontenerów Dockera, przedstawiono także podstawowe wewnętrzne procesy kontenerów. Z książki dowiesz się, jak przygotować pakiet aplikacji ze wszystkimi ich zależnościami, a następnie przetestować go, wdrożyć, skalować oraz utrzymywać w środowiskach produkcyjnych. Znajdziesz tu również nowy rozdział na temat Docker Compose, głębsze omówienie trybu Docker Swarm, wprowadzenie do Kubernetes, a także przykłady optymalizacji obrazów Dockera i wiele innych przydatnych informacji. W tej książce między innymi: solidne wprowadzenie do Dockera oraz przygotowanie środowiska pracy debugowanie obrazów i kontenerów Dockera sprawne wdrażanie aplikacji w środowiskach produkcyjnych wdrażanie kontenerów w publicznych i prywatnych chmurach standardy branżowe przy projektowaniu oprogramowania w Dockerze Docker. Koniec problemów z zależnościami w aplikacjach!

18
E-book

Docker. Programowanie aplikacji dla zaawansowanych. Wydanie II

Russ McKendrick, Scott Gallagher

Od czasu swojej premiery w 2013 r. Docker cieszy się rosnącym zainteresowaniem. Liczba deweloperów korzystających z tej platformy rośnie lawinowo. Docker zmienił sposób projektowania i wdrażania aplikacji, włączając w to również aplikacje sieciowe. Ma duże możliwości i łączy w sobie prostotę wdrażania aplikacji z prostotą administrowania. Pozwala na rozwiązywanie problemów, z którymi borykają się zespoły programistów i administratorów wdrażających nowe systemy. Jednym słowem, jest to niezwykle użyteczne narzędzie i warto maksymalnie wykorzystać jego potencjał! Niniejsza książka jest praktycznym podręcznikiem, dzięki któremu szybko zaczniesz efektywnie korzystać z Dockera. Prędko też zauważysz zupełnie nowe możliwości pracy nad oprogramowaniem. Zapoznasz się z podstawowymi koncepcjami związanymi z Dockerem i z takimi zagadnieniami, jak budowanie, zarządzanie i przechowywanie obrazów. Dowiesz się, kiedy i w jaki sposób warto rozszerzyć Dockera i jak zintegrować go z różnymi platformami i narzędziami. Nauczysz się pracować z kontenerami za pomocą narzędzi Docker Machine, Docker Swarm i Docker Compose. Zapoznasz się również z problematyką bezpieczeństwa tworzonych systemów. W tej książce między innymi: zwięzłe podstawy Dockera oraz zasady pracy z obrazami i kontenerami Dockera przechowywanie i dystrybucja obrazów praca z narzędziami Portainer i Rancher oraz z usługą Docker Cloud zabezpieczanie platformy i zarządzanie przepływem zadań ulepszanie aplikacji działającej w kontenerze Dockera Docker: od teraz aplikacja działa zawsze i wszędzie!  

19
E-book

Docker. Projektowanie i wdrażanie aplikacji

Jaroslaw Krochmalski

Piętnastego marca 2013 roku na jednej z konferencji dla projektantów aplikacji zaprezentowano światu Dockera. Choć wystąpienie to trwało zaledwie kilka minut, wzbudziło ogromne zainteresowanie. Nic dziwnego — nowe narzędzie znacząco uprościło tworzenie oprogramowania i wdrażanie go na dużą skalę w dowolnym środowisku oraz usprawniło przepływ pracy. Docker ułatwia decyzje dotyczące architektury, co przekłada się na tworzenie narzędzi pomocniczych i ich wykorzystanie w różnych aplikacjach. Jednak aby w pełni skorzystać z tych licznych zalet, trzeba zrozumieć specyficzne podejście Dockera do budowy aplikacji. Dzięki tej książce zrozumiesz, skąd się wziął lawinowy wzrost popularności Dockera. Przyjrzysz się temu znakomitemu narzędziu z punktu widzenia projektanta i dowiesz się, dlaczego dzięki niemu projektowanie, testowanie i wdrażanie aplikacji stają się szybsze i prostsze. Najpierw zapoznasz się z zagadnieniami podstawowymi, takimi jak kontenery, środowisko wykonawcze i narzędzia systemowe, aby potem skupić się na tworzeniu, uruchamianiu i publikowaniu obrazów Dockera. Znajdziesz tu również informacje o przydatnych zasobach internetowych dotyczących Dockera, a także o wartościowych narzędziach zewnętrznych, znakomicie poprawiających komfort pracy z tym narzędziem. Najważniejsze zagadnienia: wprowadzenie do Dockera i przygotowanie środowiska pracy architektura Dockera: obrazy, woluminy, kontenery proces dystrybucji oprogramowania najlepsze praktyki tworzenia plików Dockera przykłady tworzenia rzeczywistych aplikacji w Dockerze Docker: już dziś korzystaj z narzędzi jutra! Jarosław Krochmalski — od kilkunastu lat tworzy oprogramowanie. Specjalizuje się w aplikacjach dla branży finansowej. Jest projektantem z pasją, entuzjastą przejrzystego kodu i kunsztu w pisaniu oprogramowania. Otrzymał certyfikat Certified Scrum Master. Szczególnie interesuje się nowymi technologiami związanymi z projektowaniem aplikacji internetowych, wzorcami projektowymi, architekturą dla przedsiębiorstw oraz wzorcami integracji. Brał udział w wielu projektach o dużej skali, takich jak międzynarodowe przekazy pieniężne, płatności ekspresowe i systemy gromadzenia danych. Obecnie pracuje jako konsultant w duńskiej firmie 7N.

20
E-book

Docker. Wydajność i optymalizacja pracy aplikacji. Wydanie II

Allan Espinosa, Russ McKendrick

Docker to technologia, dzięki której można uruchamiać kod w wielu środowiskach i na różnych platformach. Sposób działania tego oprogramowania bardzo upraszcza opracowywanie, testowanie, wdrażanie i skalowanie aplikacji. Docker wciąż jest sukcesywnie rozwijany. Zyskał znakomitą stabilność, a zestaw udostępnianych programistom narzędzi stale rośnie. Twórcy dużych systemów, zwłaszcza rozproszonych, coraz bardziej doceniają jego potencjał. Szczególnie atrakcyjny jest dla tych projektantów, którzy stawiają na konteneryzację i automatyzację przepływu pracy i ciągle poszukują sposobów optymalizowania działania swoich aplikacji. Ta książka to znakomity przewodnik, dzięki któremu szybko poprawisz wydajność swoich aplikacji Dockera. Wyjaśniono tu zasady dostrajania plików Dockerfile, pokazano praktyczne techniki wdrażania kontenerów Dockera, przedstawiono także informacje o monitorowaniu wydajności kontenerów oraz o pracy z dziennikami zdarzeń hostów za pomocą stosu ELK. Z książki dowiesz się również, w jaki sposób standardowe narzędzia Linuksa umożliwiają diagnozowanie i rozwiązywanie problemów związanych z kontenerami. Nie zabrakło bardzo przydatnych wskazówek odnoszących się do przygotowania aplikacji do wdrożenia w środowiskach produkcyjnych z wykorzystaniem najefektywniejszych technik DevOps. W tej książce między innymi: przygotowanie Dockera i jego konfigurowanie za pomocą programu Chef monitorowanie Dockera za pomocą systemu Prometheus sprawne wdrażanie aplikacji i testy wydajności skalowanie aplikacji Dockera debugowanie kontenerów Wydajny. Wydajniejszy. Docker.

21
E-book

Flask. Tworzenie aplikacji internetowych w Pythonie. Wydanie II

Miguel Grinberg

Frameworki bardzo ułatwiają życie programistom. Pozwalają na szybkie tworzenie nawet rozbudowanych aplikacji, ale praca z frameworkiem najczęściej oznacza duże ograniczenia w doborze technologii. Wszystko jest w porządku, dopóki deweloper stosuje dokładnie te rozwiązania, które zaplanowali twórcy frameworka. Jeśli jednak zechce użyć innej bazy danych albo wykorzystać własną, autorską metodę uwierzytelniania użytkowników, może napotkać różne nieprzewidziane problemy. Szczęśliwie nie wszystkie mikrośrodowiska zachowują się w ten sposób. Framework napisany w Pythonie Flask, w odróżnieniu od typowych frameworków, umożliwia swobodne dobieranie technologii i komponentów aplikacji, a nawet tworzenie własnych rozwiązań. Oznacza to, że Flask pozwoli Ci zachować pełną kontrolę nad budowanym oprogramowaniem! To książka przeznaczona dla twórców aplikacji internetowych, którzy chcą nauczyć się pisać rozbudowane oprogramowanie we Flasku. W praktyczny sposób przedstawia proces tworzenia kompletnej aplikacji, od programu zawierającego zaledwie kilka linii kodu aż po złożone oprogramowanie z wieloma zaawansowanymi rozwiązaniami technicznymi. Rozpoczyna się gruntownym wprowadzeniem do Flaska i stopniowo przechodzi do nieco trudniejszych zagadnień, również takich jak migracje baz danych i API. Porusza też tematykę usług sieciowych typu REST, obsługi błędów, serializacji zasobów oraz korzystania z takich narzędzi jak Selenium czy Heroku. Przemyślany układ treści, którą zilustrowano praktycznymi przykładami kodu, ułatwia prześledzenie procesu stopniowej rozbudowy aplikacji o nowe funkcjonalności. W książce znajdziesz między innymi: zasady programowania we Flasku opis struktury aplikacji Flasky i etapy jej budowy sposoby korzystania z szablonów strategie planowania testów jednostkowych i analizy wydajności aplikacji opcje wdrażania aplikacji Flask Flask: wolność twórcza programisty!

22
E-book

Hands-On Docker for Microservices with Python. Design, deploy, and operate a complex system with multiple microservices using Docker and Kubernetes

Jaime Buelta

Microservices architecture helps create complex systems with multiple, interconnected services that can be maintained by independent teams working in parallel. This book guides you on how to develop these complex systems with the help of containers.You’ll start by learning to design an efficient strategy for migrating a legacy monolithic system to microservices. You’ll build a RESTful microservice with Python and learn how to encapsulate the code for the services into a container using Docker. While developing the services, you’ll understand how to use tools such as GitHub and Travis CI to ensure continuous delivery (CD) and continuous integration (CI). As the systems become complex and grow in size, you’ll be introduced to Kubernetes and explore how to orchestrate a system of containers while managing multiple services. Next, you’ll configure Kubernetes clusters for production-ready environments and secure them for reliable deployments. In the concluding chapters, you’ll learn how to detect and debug critical problems with the help of logs and metrics. Finally, you’ll discover a variety of strategies for working with multiple teams dealing with different microservices for effective collaboration.By the end of this book, you’ll be able to build production-grade microservices as well as orchestrate a complex system of services using containers.

23
E-book

Kontenery. Bezpieczne wdrożenia. Podstawowe koncepcje i technologie

Liz Rice

Imponująca możliwość skalowania oraz odporność na awarie skłania organizacje do uruchamiania swoich aplikacji w natywnych środowiskach chmury. Technologia kontenerów i orkiestracji stała się ostatnio bardzo modna. Jednak nawet tak nowoczesne systemy nie są wolne od zagrożeń. Aby zapewnić wdrożeniom kontenerowym najwyższy możliwy poziom bezpieczeństwa, trzeba zrozumieć mechanizmy działania kontenerów. Jako że powstają one przez połączenie różnych funkcji jądra systemu Linux, zapewnienie bezpieczeństwa kontenera oznacza zastosowanie wielu mechanizmów wykorzystywanych w komputerze gospodarza działającego pod kontrolą systemu operacyjnego Linux. Ta książka jest przeznaczona dla programistów, menedżerów i specjalistów do spraw bezpieczeństwa odpowiedzialnych za systemy kontenerowe. Dzięki niej zrozumiesz, co się dzieje podczas uruchamiania aplikacji w kontenerach i jak działają różne mechanizmy zapewnienia bezpieczeństwa. Przyswoisz kluczowe koncepcje, które ułatwią Ci ocenę ryzyka dla konkretnego systemu. Dowiesz się, jak w bezpieczny sposób tworzyć obrazy kontenerów, i zrozumiesz znaczenie poprawnej izolacji kontenerów. Zapoznasz się z podstawami korzystania z kluczy i certyfikatów służących do identyfikacji i nawiązywania bezpiecznych połączeń sieciowych między kontenerami. Nauczysz się korzystać z narzędzi do zapewniania bezpieczeństwa i unikania ataków. Dodatkowo zaprezentowany tu materiał został bogato zilustrowany gotowymi do przetestowania fragmentami kodu. Najciekawsze zagadnienia ujęte w książce: mechanizmy ataków na wdrożenia oparte na kontenerach koncepcje systemu Linux istotne dla wdrożeń kontenerowych sposoby zabezpieczania kontenerów: najlepsze praktyki błędy w konfiguracji i luki w zabezpieczeniach kontenera bezpieczeństwo połączeń między kontenerami narzędzia do zapewnienia bezpieczeństwa System oparty na kontenerach. Jak dobrze jest zabezpieczony?

24
E-book

Kubernetes i Docker w środowisku produkcyjnym przedsiębiorstwa. Konteneryzacja i skalowanie aplikacji oraz jej integracja z systemami korporacyjnymi

Scott Surovich, Marc Boorshtein

Technologie Kubernetes i Docker szybko zdobyły zaufanie dużych firm i dziś są standardową infrastrukturą pozwalającą na tworzenie, testowanie i uruchamianie aplikacji. W porównaniu z wcześniej stosowanymi rozwiązaniami wymagają jednak zupełnie innego podejścia do budowy i wdrażania oprogramowania. Oznacza to, że jeśli korporacja chce w pełni skorzystać z potencjału Kubernetesa i Dockera, musi znaleźć osoby dysponujące wiedzą i umiejętnościami pozwalającymi na zintegrowanie klastrów Kubernetes z istniejącymi systemami organizacji. To książka przeznaczona dla osób, które chcą poszerzyć swoją wiedzę i umiejętności potrzebne do pracy z klastrami. Omówiono tu podstawy dotyczące konteneryzacji, Dockera i Kubernetesa, jednak więcej miejsca poświęcono bardziej zaawansowanym zagadnieniom, między innymi integracji kontenera z platformą chmury czy integracji z takimi narzędziami jak MetalLB, ExternalDNS i OpenID Connect (OICD). Zaprezentowano również zasady stosowania Pod Security Policy (PSP), Open Policy Agent (OPA), Falco i Velero, a także sposób, w jaki przebiega wdrażanie całej platformy w chmurze z użyciem mechanizmów ciągłej integracji i ciągłego wdrażania (CI/CD). Dowiesz się też, jak testować aplikacje i komponenty Kubernetes i jak implementować różne rozwiązania open source. Najciekawsze zagadnienia: Tworzenie wielowęzłowego klastra Kubernetes za pomocą KinD Implementacja narzędzi: Ingress, MetalLB i ExternalDNS Konfiguracja klastra OIDC i uwierzytelnianie w Kubernetesie Zabezpieczanie i audyty klastrów Wdrażanie platformy z użyciem projektów: Tekton, GitLab i Argo CD Kubernetes i Docker: tak działają systemy najpotężniejszych korporacji!