Understanding WebRTC Issues and How to Debug Them

WebRTC is an amazing and rather ground-breaking technology, enabling plugin-free connectivity between browsers, typically for video chat applications. However, WebRTC is capable of transmitting a variety of high-speed data, including peer-to-peer gaming, file transfer, and other true serverless applications.

In thiseBookwe take a look at WebRTC, an amazing and ground-breaking technology, enabling plugin-free connectivity between browsers.

Secure Serverless CI/CD with Codeship, PureSec, and AWS Lambda

When you develop, build, and deploy applications using a serverless architecture, you have no access to the infrastructure on which traditional security controls used to exist. Nonetheless, serverless applications may contain application layer vulnerabilities, which may enable a malicious user to mount application layer attacks.

In this eBook we will talk about Secure Serverless CI/CD with Codeship, PureSec, and AWS Lambda.

An Overview of the Service Mesh and Its Tooling Options

For an app to function at its best, every part of the application stack needs to be optimized and modernized. The way code is deployed is changing as applications are built and deployed in a more distributed manner. The layer that needs to function seamlessly is the networking layer. In modern containerized applications, a lot of focus is on the infrastructure and packaging and deployment of code, not so much on networking. This has been changing recently with the advent of the service mesh.

In this eBook you will learn what a service mesh is and why it is a superior alternative to traditional networking models.

Using Serverless Functions with AWS Lambda

Serverless functions (Lambdas, in AWS's case) are incredibly useful for configuring the execution of our workload processes. Plus, we only pay for the time and computing power that we use. There’s no need for an ever-running server that’s consuming hosting costs even when it's not in use.

In this eBook you will learn how to execute code on third-party servers – also known as serverless functions – with AWS Lambda.

Running a MEAN Web Application in Docker Containers on AWS

A free eBook that will teach you how to install and run a web application on the MEAN stack. You will also learn how to host this app in Docker containers on AWS.

Here is what you will learn in this book:

What is the MEAN stack and how can I build a web application with it?

How to run your app on AWS inside isolated Docker containers.

How to validate your application from the browser.

How Docker Streamlines Production Deployments

In this eBook we discuss some core reasons how Docker helps to predictably streamline the deployments of your application across all of your environments, from development through to production. Docker, thus, helps ensure a modern software development workflow that focuses on efficiency, reliability, and repeatability.

Here is what you will learn in this book:

How Docker supports packaged applications (containerization)

How Docker supports “Build Once, Deploy Many Times In Multiple Locations” (repeatability of build environment)

How Docker supports easy rollback to earlier versions should something have gone wrong

If you’ve not considered Docker as a part of your development toolchain yet, we hope that this will motivate you to do so. It’s a tool with a lot of merit, one that’s only getting better.

Continuous Integration and Continuous Delivery with Docker

A free eBook that will teach you how to set up a Continuous Delivery Pipeline with Docker and containers and how to create a matrix of deployments of microservices.

Here is what you will learn in this book:

How containerization allows to improve the Continuous Delivery process.

How to set up Continuous Integration and Delivery with Docker and containers.

Going beyond CD with Docker by creating a matrix of deployments of microservices.

A Roundup of Managed Kubernetes Platforms

In the race of container orchestrators, Kubernetes is surging ahead. However, people are often stuck on the step of getting their infrastructure to production. In this eBook you will get an overview of Managed Kubernetes Platforms and their basic features.

Here is what you will learn in this book:

Information on companies willing to offer solutions for helping you get Kubernetes into production.

Dockerizing Ruby Apps and Effectively Testing them

Docker is an incredibly popular tool for virtualizing development and production environments. Its value lies in the idea that it creates portable, scalable environments that anyone can scaffold within minutes. In this eBook you will learn how to dockerize Ruby applications and how to test them. We will take a look at Docker's powerful features from the perspective of a Dockerized Ruby on Rails application.

Continuous Deployment for Docker Apps to Kubernetes

In this eBook you will learn how to set up Continuous Deployment to Kubernetes for your Docker Apps. In detail, we will look at automating the management, deployment and scaling of your containerized applications.

Here is what you will learn in this book:

What Kubernetes is

How to setup Continuous Deployment to Kubernetes

How to scale your containerized applications

Docker Secrets Management

To cope with the ever-growing amount of services we depend on for our development stack, let's look at Docker Secrets, the newly added secrets management feature in Docker 1.13.

Breaking up your Monolith into Microservices

In this eBook you will learn about the basics of "decomposing" a monolith into microservices and why it is a worthwhile effort for your project. You will also learn about commonly considered microservices best practices and how you can apply them.

Here is what you will learn in this book:

What are microservices?

Microservices Best Practices

How to decompose a monolith into microservices

How to start a conversation with your team about moving to a microservices architecture

Efficient Project Management for Small Engineering Teams

Managing a small engineering team — whether it's one team within a larger engineering organization, such as Facebook, Google, or AirBnb, or whether it's the entire engineering team — can be a tough gig. In this eBook you will learn how to find project management balance when managing small engineering teams and why a professional culture is essential for success.

Best Practices When Versioning a Release

Ever wondered how to version a release of your software? Ever looked around at the software you're using and asked what their approach is? Have you ever been confused as to which approach to take? In this eBook you will learn about versioning for software releases. We will take a closer look at semantic versioning – a key best practice for versioning software releases used by some of the best development teams in the world.

Container Image Immutability and the Power of Metadata

In this eBook you will learn how to use LABEL to add meaningful metadata to your container images. Labels are key-value pairs that can be applied to images at build time or added when you start a container.

Using Docker and Codeship for PHP Development

Thinking of moving to containerized development? In the first part of this eBook you will learn how to develop and test a PHP app with Docker Compose. The second part will focus on how to further create a CI/CD pipeline for your app using Codeship.

Using Docker and Codeship for Ruby Development

Docker is an amazing tool for developers. It allows us to build and replicate images on any host, removing the inconsistencies of dev environments and reducing onboarding timelines considerably. In this eBook you will learn how to develop and test a Ruby app with Docker Compose and how to further create a CI/CD pipeline for your app using Codeship.

Turning Your App into Separate Containers for Better CI/CD

In this eBook, we take a look at optimizing the time it takes to test and deploy the open-source Laravel Framework project. We are benchmarking serialized tests against parallelized test and build processes and are showcasing the best ways to prepare your deployment with Codeship Pro.

Here is what you will learn in this book:

How to speed up our test suite through parallelization

How to set up your Dockerfiles to optimize the testing and deployment process

How to get started with using Codeship Pro

Why Containerization is the Future

A free eBook about the rise of the Container Stack and why Docker and its ecosystem and community play such a big part in it.

Here is what you will learn in this book:

What are the differences between the Traditional, Virtual Machine, and Container Stack

Why are Docker and its ecosystem such a big deal?

How do Docker and its community help standardize the Container Workflow?

Deploying Docker Apps to AWS

In this eBook you will learn how to set up Continuous Deployment to Amazon Web Services (AWS) for your Docker Apps. We'll talk about EC2, ECS, ECR, Elastic Beanstalk and CodeDeploy.

Here is what you will learn in this book:

How to set up Continuous Deployment to AWS EC2, ECS and ECR

How to deploy your apps to Elastic Beanstalk and CodeDeploy

How to run AWS commands in an authenticated and pre-configured environment

Understanding the Docker Ecosystem

A free eBook that introduces the Docker Hub, Docker Engine, Kitematic, Docker Machine, Docker Swarm, Docker Compose, Docker Cloud, and Data Center. Learn what they are and how they work.

Here is what you will learn in this book:

What is the Docker Hub is and how does it provide Docker images?

What is Docker Swarm and how does it help scale your applications?

What is Docker Compose and how does it help orchestrating containers?

Orchestrate Containers for Development with Docker Compose

A free eBook that will teach you how to set up a Docker Compose workflow and how you can reproduce a complex build and test environment easily.

Here is what you will learn in this book:

Docker Compose, its functionality and its main commands.

How to set up a Docker Compose workflow.

How to recreate a microservice architecture on your development machine with Docker Compose.

Test-Driven Development for JavaScript

Our applications are being composed of more and more JavaScript. The influx of JavaScript developers tells us that a lot of modern-day web development is starting to focus more and more on the frontend. However, are we effectively testing all of this newfound client-side code? In this eBook we will explore the idea of practicing Test-Driven Development (TDD) for client-side JavaScript.

Here is what you will learn in this book:

Server-side versus client side Javascript

Using TDD for client-side Javascript

Better understand the TDD process and develop some simple but stable code

Why Continuous Integration Is Important

If you've had trouble establishing CI processes at your company, this eBook will provide you with an arsenal of CI benefits that team leaders in all kinds of departments can get behind.

Here is what you will learn in this book:

What is continuous integration and why it is important

How Continuous Integration creates value for the whole business and not just for development teams

How to start establishing CI processes in your company

The Shortlist of Docker Hosting

In this eBook, we will have a closer look at AWS, Digital Ocean, Carina, Sloppy.io, Giant Swarm, Google Compute Engine, Microsoft Azure, Heroku, and Quay.io. Deploying to all of these services is supported by Codeship Pro.

Here is what you will learn in this book:

Which are the main hosting services available today (August, 2016)

The basics on how to get started with these services

How these Docker hosting services compare to each other

Automate your Development Workflow with Docker

A free eBook that will teach you how you can introduce Docker to a team of developers to nullify the issue of inconsistent environment setups and the problems that come with them.

Here is what you will learn in this book:

Why consistent environments are so important.

How a company lost $400 million in 45 minutes due to inconsistent environments.

An Introduction to Docker Plugins

In this eBook, we take a look at Docker Plugins and explain how you can benefit from them. Docker plugins are out-of-process extensions which add capabilities to the Docker Engine. This eBook will help you get started on creating plugins with capabilites such as Authorization (Authz), VolumeDriver, NetworkDriver, and IpamDriver.

Here is what you will learn in this book:

What Docker Plugins are

How they add additional capabilities to the Docker Engine

How they can help you develop software more efficiently

An Introduction to Deploying Docker Apps with Codeship Pro

In this eBook, we will walk you through Codeship Pro. We will look at building and deploying applications to show the full flexibility of the system.

Here is what you will learn in this book:

Using the Codeship Pro Web UI to get a good overview of our build's status

Builing a minimal Docker container with the codeship-steps.yml and codeship-services.yml files

Integration testing production containers

Deploying anything with Codeship Pro

Running a Private Docker Registry on Amazon EC2

A free eBook that will teach you which AWS services are integrated with Docker and how you can use AWS to host your own registry.

Here is what you will learn in this book:

Which AWS services are integrated with Docker?

How do I prepare AWS resources for my private Docker registry?

How can I launch a private Docker registry with Amazon ECS?

Testing and Deploying your Docker Apps with Elastic Beanstalk

In this eBook you will learn how to prepare Elastic Beanstalk for Docker, how to build and push your Docker images to Docker Hub, and how to test and deploy your app to EBS with Codeship.

Here is what you will learn in this book:

How to deploy a Docker container image using Elastic Beanstalk

How to build and push your Docker images to Docker Hub

How to create an Elastic Beanstalk App

How to create an Elastic Beanstalk environment

Docker for Windows, Linux, and Mac

Released earlier in 2017, Docker’s new native applications for Windows and Mac replaced the older methods for running Docker on Windows and Mac and created a better experience for developers using those platforms. In this eBook you will get an overview alongside tips and gotchas on how to use Docker on different platforms.

Efficiency in Development Workflows

Kubernetes Solutions Directory

In this eBook, The New Stack lists over 100 project and vendor offerings that are used to deploy and manage Kubernetes and the apps running it. Several offerings are classified as a managed service, a Platform as a Service (PaaS), Containers as a Service (CaaS) or a container management solution.

A Beginner's Guide to the Dockerfile

In this eBook we will give an overview of the Dockerfile – the building block of Docker images and containers. You will learn how to create a Dockerfile from scratch, how to push images to the Docker Hub, and some Dockerfile Best Practices.

How to Refactor a Monolithic Codebase Over Time

While so many software projects start off with the best of intentions, such as a clean architecture, clear goals, and stated objectives, not all of them do. Moreover, of the ones that do, not all of them stay that way forever. With time, feature requests, financial pressures, competing priorities, and changing developers, it is highly likely that what began as a shining example of code quality, eventually becomes a monolith. Monolithic codebases are not easy to maintain. In this eBook you will learn the essentials of how to refactor a monolithic codebase.

Here is what you will learn in this book:

The key principles to cleaning up a complex codebase

How to refactor a monolithic codebase

The main questions you should ask yourself when refactoring a monolith

How to Become Cloud Native

There is a huge value to embracing what cloud native truly is. In short, cloud native is an approach to creating and deploying applications that fully taps into the advantages of delivering, scaling, and distributing your products on the cloud. In this eBook we're going to break down the three pillars of being cloud native and what they mean on a practical level.