
Learn how to package a Python or Node app with Docker, then deploy it on Google Cloud Run using serverless scaling and Kubernetes-based K Native underpinnings.
Build a minimal Python app, containerize with Docker, and deploy to Google Cloud Run via GitHub Actions secrets. Learn secure secret management with Google Cloud Secrets Manager and environment variables.
Learn the essential setup for a serverless docker-based python app on Google Cloud, including Python 3.8+, venv, VS Code, Git, Docker, and deploying with Cloud Run via GitHub Actions.
Learn to log into the Google Cloud console, create a project, and initialize it with the Google Cloud CLI; install and configure gcloud on mac, Linux, and Windows.
Install Docker Desktop to containerize an application locally before deploying to Google Cloud Run. Use GitHub Actions to deploy to Google Cloud Run and experiment rapidly with Docker locally.
Create a new project directory, set up a Python 3.8 virtual environment, install dependencies from requirements.txt, and configure version control and editors for serverless docker-based apps.
Build a simple hello world FastAPI app, returning JSON, with get and post routes, run via uvicorn, and prepare for deployment by configuring environment variables and CI/CD.
Load and manage environment variables for a Python application using python-decouple, enabling a dev mode via an external env file, with path handling for production secrets on Google Cloud.
Create a simple rav shortcut to run server commands, install rev, and auto-reload when code changes. Use rev run for testing and docker-related tasks like docker build and docker push.
Test code with pi test and http x using a fast API test client, verify the home page returns JSON with status 200, and prepare docker-based test workflows.
Create a dockerfile with a python slim image, target python 3.8, copy code and requirements, set up a virtual environment, upgrade pip, install requirements, and run the app.
Build a linux-based docker entrypoint script for a python app, using a port environment variable and 0.0.0.0 binding to enable cloud run deployment with unicorn as the web server.
Build and run a container image with docker, explore tagging and multiple docker files, map ports, and access a running container to inspect its working directory.
Verify dockerignore and copy paths in the Dockerfile, then build and run an empty container on port 8000 to diagnose image contents and fix the app source requirements path.
Run your built Docker image locally and resolve container name conflicts while pruning containers. Configure environment variables with env files or inline options and adjust ports for staging and prod.
Learn how to build and push production-ready Docker image to Google Cloud Artifact Registry by configuring Docker with gcloud, creating US central one repository, and tagging for AMD 64.
deploy container to Cloud Run, configure container image url, service name, region, traffic split, and environment variables, then deploy via gcloud run deploy and manage revisions.
Create a private GitHub repo with a main YAML workflow to automate CI/CD via GitHub Actions for a serverless Python app on Google Cloud Run, building and testing containers.
Set up GitHub Actions for Google Cloud, secure secrets for container image, project id, and region, then configure service account authentication and push the Docker image to Cloud Run.
Create a dedicated Google Cloud service account for GitHub Actions, generate a JSON key, and assign artifact registry writer and cloud run user roles to enable secure deployment.
Enable Google Cloud Secret Manager, create secrets from a key-value file with gcloud, and manage versions and access for a serverless docker-based Python app on Google Cloud.
Learn to verify and manage Google Cloud secrets with Python in a serverless docker-based app, using a service account, project ID, secret labels, and Python decouple for secure loading.
Explore updating python-decouple to load production secrets from Google Cloud secrets, using string IO and environment variables, with local development and production considerations.
Set up a GitHub Actions workflow to manage Google Cloud secrets, store production secrets in GitHub, and grant the Cloud Run service account the secrets version adder role.
Attach g-cloud secrets to a service account with iam policy binding in Razvi yaml, then trigger revisions and updates via GitHub actions to refresh and version secrets.
Balance manual setup with automation using GitHub Actions and Next Dose Act, then explore running Actions locally and integrating a Python app with Cloud SQL on Google Cloud Run.
Explore the archived course version to learn about Google Cloud Container Registry and Google Cloud Build as alternatives to Artifact Registry and GitHub Actions. Download it on Udemy.
deploy a serverless application on Google Cloud Run using docker container images to run code without managing infrastructure, with OpenCV support in Python projects and reference items on GitHub.
Install docker by downloading desktop from docker hub, creating an account, and verifying with docker version to enable cloud run's serverless containers on google cloud platform.
Create a base Python project for a serverless app on Google Cloud Run using FastAPI and Uvicorn, then containerize with Docker to enable scalable REST APIs across projects.
Create a lean dockerfile for a python app using a slim python base, set app home, copy files, install fastapi and unicorn, and bind to 0.0.0.0 with cloud run port.
Build and run a docker container locally, teaching you to tag images, choose dockerfile names, run with port mappings, and set environment variables to test before deploying to google cloud.
Push your Docker container to Google Cloud by tagging with your gcr.io project and pushing to the Google Cloud container repository, enabling production deployment and versioning.
Push a serverless docker-based python app to google cloud by tagging and pushing images to gcr.io. Enable billing and the container registry application programming interface to deploy with latest tags.
Build docker containers in Google Cloud with gcloud build, push to container registry, and manage versions via tags while pruning local images and deploying a serverless Python app.
Deploy your serverless container image to Cloud Run with gcloud, using a GCR image in a region, and learn versioning, unauthenticated access, and how Kubernetes enables Cloud Run to scale.
Wrap up by deploying a serverless container-based Python app on GCP and Cloud Run, and plan future integrations with Cloud SQL and Cloud Storage.
Deploy a Serverless Python Application with Docker Containers and Google Cloud Run.
Running our apps on managed serverless architectures allows us to focus on our code and deploy more without worrying about the underlying infrastructure. What's better, our serverless applications only cost us money when they're used this is because serverless apps can scale to 0 running instances or scale up as needed.
Serverless is great for testing all kinds of app ideas as well as testing various stages of a stable app. Cloud Run is a managed service that unlocks serverless apps for your projects on Google Cloud. It's how we run this website exactly.
Cloud Run is a managed Knative offering that runs on Kubernetes so if you're interested in deploying a self-managed Knative service, consider watching my course Try Knative.
Here's what we're going to learn in this course:
Creating a basic FastAPI web app (in Python)
Implement python-decouple to manage environment variables in FastAPI
Writing a basic automated test to ensure our app is working as needed
Prepare and learn about a Dockerfile before building a container
Building a Docker container locally
Running a custom Docker image (container) locally
Push our code to GitHub
Leverage GitHub Actions to perform CI/CD workflows
Using Github Actions to build and push our Docker container to Google Cloud
Use Google Cloud Secrets manager within our Python app
Update Secrets in Github Actions as needed
Deploy our app continuously on Google Cloud Run
Course was completely revamped and released on Feb 15th, 2023