A Comprehensive Guide to Installing and Utilizing Docker Swarm and Load Balancing Docker Swarm Services with Nginx Proxy

Containerization has revolutionized software deployment, and Docker Swarm provides a powerful solution for orchestrating and managing containerized applications. In this guide, we will take you through the step-by-step process of setting up and effectively using Docker Swarm on three virtual machines, and then extend it to include a load balancing proxy using Nginx. By the end of this tutorial, you’ll be equipped with the knowledge to harness the benefits of container orchestration and load balancing for your projects.

Continue reading “A Comprehensive Guide to Installing and Utilizing Docker Swarm and Load Balancing Docker Swarm Services with Nginx Proxy”

Mastering Docker Networking: Exposing Ports Only to Other Containers

Docker networks are virtual networks created by Docker to enable communication between Docker containers, allowing them to connect to and communicate with each other or to non-Docker workloads. Containers inside the Docker network can talk to each other by sharing packets of information, and each container sees a network interface with an IP address, a gateway, a routing table, DNS services, and other networking details. By default, the container gets an IP address for every Docker network it attaches to, and when a container starts, it can only attach to a single network, using the –network flag. However, you can connect a running container to multiple networks using the docker network connect command.

Continue reading “Mastering Docker Networking: Exposing Ports Only to Other Containers”

Running Rundeck and Ansible in Podman with a MySQL Backend and Podman-Compose: A Comprehensive Guide

In today’s ever-evolving IT landscape, the need for self-service automation and precise scheduling has become significant. Enter Rundeck and Ansible, two formidable tools that empower organizations to speed up their infrastructure management. When combined with the containerization capabilities of Podman and the orchestration provided by Podman-Compose, you can create a robust automation environment that not only simplifies self-service tasks but also enables precise scheduling.

Continue reading “Running Rundeck and Ansible in Podman with a MySQL Backend and Podman-Compose: A Comprehensive Guide”

Understanding Kubernetes and Docker: A Beginner’s Guide for DevOps

In the world of DevOps, two buzzwords that frequently come up are Kubernetes and Docker. Both technologies have revolutionized the way applications are developed, deployed, and managed. While they are often used together, they serve different purposes and have distinct roles in the modern software development landscape.

Continue reading “Understanding Kubernetes and Docker: A Beginner’s Guide for DevOps”

Rundeck Unleashed: Accelerating DevOps Workflows with Self-Service Empowerment

As DevOps practitioners, we’re always on the lookout for new tools that can help us streamline our workflows and improve our processes. One such tool that we’ve recently been exploring is Rundeck, an open-source automation platform that can help us manage and execute our jobs and tasks more efficiently.

Continue reading “Rundeck Unleashed: Accelerating DevOps Workflows with Self-Service Empowerment”

A Guide For Configuring and Hosting an In-House Docker Registry

Docker has revolutionized the way we build, ship, and run applications by containerizing them. One critical component of a well-managed container ecosystem is a Docker registry. While Docker Hub is a popular choice for hosting container images, there are compelling reasons to set up an in-house Docker registry. In this guide, we will walk you through the steps to configure and host your own Docker registry, ensuring control, security, and efficiency in your containerized environment.

Continue reading “A Guide For Configuring and Hosting an In-House Docker Registry”

Simplify Container Orchestration with Podman-Compose

In the dynamic world of containerization and orchestration, developers and IT professionals continually seek tools that streamline the deployment and management of containerized applications. While Docker Compose has long been the go-to solution for orchestrating containers, its dependency on the Docker daemon can be limiting in certain environments. Enter Podman-Compose, a powerful alternative that offers greater flexibility and security while maintaining compatibility with Docker Compose syntax. In this blog post, we’ll look into Podman-Compose, exploring its key features and demonstrating how it can simplify your container orchestration tasks.

Continue reading “Simplify Container Orchestration with Podman-Compose”

TryHackMe | Simple CTF – Modern Solution (2023) Working Exploit With Docker.io

If you have been doing the TryHackMe Simple CTF challenge recently, you may have ran into the problem that the original exploit is written in Python 2 for Ubuntu 18.04. The script can be converted or rewritten to Python 3, but my Debian Bookworm attack box had issues running it and showing the result. I came up with a quick solution using docker.io.

Continue reading “TryHackMe | Simple CTF – Modern Solution (2023) Working Exploit With Docker.io”

Docker Compose vs. Docker Swarm: Choosing the Right Orchestration Tool

In today’s rapidly evolving world of containerization and micro services, Docker has emerged as a powerhouse, providing tools to simplify the deployment and management of applications. Among its arsenal are Docker Compose and Docker Swarm, two distinct tools that address different aspects of container orchestration. In this article, we’ll dive into the nuances of Docker Compose and Docker Swarm, highlighting their features, use cases, and how to make the right choice for your deployment needs.

Continue reading “Docker Compose vs. Docker Swarm: Choosing the Right Orchestration Tool”

Mastering Docker Volume Management: A Comprehensive Guide with a Handful of Examples

Docker has revolutionized the way applications are deployed, offering portability and scalability like never before. One crucial aspect of Docker is volume management, which ensures data persistence and sharing between containers. In this article, we’ll dive a bit into the world of Docker volumes, explore their types, and I will provide practical examples of how to effectively manage them.

Continue reading “Mastering Docker Volume Management: A Comprehensive Guide with a Handful of Examples”

Streamlining Docker Automation with Ansible: A Comprehensive Guide

In today’s fast-paced world, efficient and reliable automation has become a necessity for successful software deployment and management. Docker, with its lightweight containers, has revolutionized the way we build, package, and deploy applications. However, manual Docker image pulling, container running, and volume management can be time-consuming and error-prone. In this blog post, we will explore how we can fully automate Docker operations using Ansible, a powerful infrastructure automation tool. By leveraging Ansible’s capabilities, we can streamline our Docker workflow and increase productivity while maintaining consistency across environments.

Continue reading “Streamlining Docker Automation with Ansible: A Comprehensive Guide”

Streamline Your DevOps Workflow: Leveraging Rundeck in Docker with Ansible

In today’s fast-paced digital landscape, effective orchestration and automation of IT operations are paramount for maintaining efficiency and scalability. DevOps teams constantly seek innovative solutions to streamline their workflows and enhance collaboration. This blog post explores the combination of Rundeck, a powerful job scheduler, and Docker, a lightweight containerization platform, with the added prowess of Ansible for configuration management.

By integrating these tools, teams can achieve a seamless and efficient orchestration pipeline. Let’s delve into how we can harness the power of Rundeck in Docker with Ansible.

Continue reading “Streamline Your DevOps Workflow: Leveraging Rundeck in Docker with Ansible”

Installing Docker Engine on Debian Bullseye as an Ansible playbook

Docker Engine is an open source containerization technology for building and containerizing our applications. Docker Engine acts as a client-server application with a server with a long-running daemon process dockerd and APIs which specify interfaces that programs can use to talk to and instruct the Docker daemon. Docker Engine is available on a variety of Linux platforms, macOS and Windows 10 through Docker Desktop, and as a static binary installation. Docker Engine is the industry’s de facto container runtime that runs on various Linux (CentOS, Debian, Fedora, Oracle Linux, RHEL, and Ubuntu) and Windows Server operating systems.

Here’s an example playbook that we can use to install Docker Engine on Debian Bullseye after the base OS installation.

Continue reading “Installing Docker Engine on Debian Bullseye as an Ansible playbook”