Adventures in DevOps

DevOps 012: Containerizing an Application


Listen Later

On this episode of Adventures in DevOps the panelists talk about how to containerize an app in a container using services such as Docker or Kubernetes. Charles mentions that he is wanting to host a Ruby on Rails application and Scott has experience with web deployments in Python and Django. They share that regardless of the languages and technologies used, the principles behind deploying a containerized application are the same.

The next topic covered by the DevOps panelists is how to create containerized instances using Docker. The discussion centers on creating the container instances on a network and best practices that can be used for managing and maintaining them. The DevOps panelists cover the difference between an internal network deployment and what is needed to push a containerized application to a cloud instance using Kubernetes, Docker, DigitalOcean, or another service. Scott asks Charles if he is using a good CI/CD (continuous integration/ continuous delivery) mechanism, to which Charles shares that he is using Cloud 66 for its ease of use. When it comes to storage, they discuss whether to use the cloud services storage option or using a container to run a Postgres engine. They also go over the best way to run the shell commands for configuring their environment.

The topic then moves to security and asset management when using Docker. Charles mentions that he tries to avoid putting API keys or other secrets into the Docker file and Scott shares how he uses a secrets management platform such as AWS Parameter Store, AWS Secrets Management, and others. They discuss the benefits that are provided by secrets management platforms. The DevOps panelists also talked about how a CI/CD platform can help with the portability of a containerized application

Charles asks Scott how to begin with helping someone who wants to take their existing application and containerize it using the Docker approach. Scott responds with describing how he would look at where there application is and help them configure their containerized instance and set it up on a container service such as Docker or Kubernetes. Scott mentions that the strength of moving an application to a container service helps the application to scale up and down as needed. The container model helps a team to locally replicate their CI/CD model and be able to test it locally before the application is pushed to the cloud instance.

The panelists talk about reverse proxies for pushing a Ruby on Rails app. Chuck prefers nginx and Scott emphasizes that it is important when pushing to production to spend some time verifying that the reverse proxy configuration is correct and won’t expose the application in a way that it shouldn’t be. Chuck shares that the use of a cloud platform such as GCP (Google Cloud Platform) of Microsoft Azure reduces the overhead with configuring containers and building images so that when he hands it off to the platform, it will take care of a large part of the setup including creation of the reverse proxy. 

Panelists

  • Charles Max Wood

  • Scott Nixon

    Sponsors

    • Sustain Our Software

    • Views on Vue

    • Dev Ed

      Links

      • Docker

      • Kubernetes

      • Ruby on Rails

      • Python

      • Django

      • Cloud 66

      • PostgreSQL

      • DigitalOcean

      • Bitbucket

      • Google Cloud Platform

      • Microsoft Azure

      • AWS Parameter Store

      • AWS Secrets Manager

      • Nginx

        Picks

        Charles Max Wood

        • Height Adjustable VESA Adapter

        • Velcro Strips

          Scott Nixon

          • The Gymkhana Files

          • The Grand Tour

            ...more
            View all episodesView all episodes
            Download on the App Store

            Adventures in DevOpsBy Will Button, Warren Parad

            • 4.4
            • 4.4
            • 4.4
            • 4.4
            • 4.4

            4.4

            18 ratings


            More shows like Adventures in DevOps

            View all
            Global News Podcast by BBC World Service

            Global News Podcast

            7,594 Listeners

            Software Engineering Radio by se-radio@computer.org

            Software Engineering Radio

            271 Listeners

            The Changelog: Software Development, Open Source by Changelog Media

            The Changelog: Software Development, Open Source

            289 Listeners

            LINUX Unplugged by Jupiter Broadcasting

            LINUX Unplugged

            268 Listeners

            Talk Python To Me by Michael Kennedy

            Talk Python To Me

            585 Listeners

            Soft Skills Engineering by Jamison Dance and Dave Smith

            Soft Skills Engineering

            289 Listeners

            Syntax - Tasty Web Development Treats by Wes Bos & Scott Tolinski - Full Stack JavaScript Web Developers

            Syntax - Tasty Web Development Treats

            987 Listeners

            Darknet Diaries by Jack Rhysider

            Darknet Diaries

            8,044 Listeners

            DataFramed by DataCamp

            DataFramed

            269 Listeners

            AWS Podcast by Amazon Web Services

            AWS Podcast

            203 Listeners

            DevOps and Docker Talk: Cloud Native Interviews and Tooling by Bret Fisher

            DevOps and Docker Talk: Cloud Native Interviews and Tooling

            55 Listeners

            DevOps Paradox by Darin Pope & Viktor Farcic

            DevOps Paradox

            25 Listeners

            The Stack Overflow Podcast by The Stack Overflow Podcast

            The Stack Overflow Podcast

            63 Listeners

            Dwarkesh Podcast by Dwarkesh Patel

            Dwarkesh Podcast

            517 Listeners

            The AI Daily Brief: Artificial Intelligence News and Analysis by Nathaniel Whittemore

            The AI Daily Brief: Artificial Intelligence News and Analysis

            608 Listeners