
Develop skills to build, deploy, and scale real-world Python apps on Google Cloud using App Engine, Cloud Run, Cloud SQL, and Cloud Storage, including Django and Flask projects.
Prepare to start the course with python basics and python 3.12, a modern browser, a code editor (PyCharm or VS Code), and Google Cloud billing with a 300 usd credit.
Discover cloud computing and Google Cloud Platform (GCP), its core services like Compute Engine, App Engine, Cloud Storage, BigQuery, Cloud Run, and Functions, and benefits such as scalability and security.
Learn to create a Google Cloud Platform account, sign in with Gmail, create a project and dashboard, and enable billing with a $300 free credit.
Explore how to interact with Google Cloud Platform using the Cloud Console, gcloud CLI, Cloud Shell, and cloud client libraries in Python to automate tasks and manage resources.
Experience a 300 USD free trial for 90 days with no charges unless you upgrade, plus ongoing free tier resources like e2 micro.
Explore Google Cloud resource hierarchy from organization to folders and projects, and learn how ownership, lifecycle management, and policy inheritance govern access via IAM across Compute Engine and Cloud Storage.
Explore the GCP organization as the top-level resource that structures folders, projects, and resources, enabling centralized policy, billing management, and automated domain-linked identity options via Google Workspace or Cloud Identity.
Understand how a Google Cloud billing account defines who pays for resources, tracks costs, and controls access across linked projects, with online versus invoiced billing options.
Explore managing google cloud billing in the console by reviewing accounts, projects, and cost reports, and creating budgets and alerts to monitor spend across all projects.
Explores Google Cloud IAM, detailing principals, rules, and resources, and shows how allow policies grant fine-grained permissions to control access to compute, database, and other resources.
Explore Google Cloud IAM principals, including Google accounts, service accounts, groups, and Google Workspace domains, and learn to craft IAM policies that grant precise access while avoiding broad exposure.
Navigate the Google Cloud Console IAM page to manage principals, assign policies and rules (owner, editor, viewer), and edit or add conditions for resource access.
Invite users to the Google Cloud Project via email and, after acceptance, assign IAM roles (owner, editor, viewer) to control access to that project.
create a service account in Google Cloud Platform to authorize applications and virtual machines to access Google Cloud resources without a human user, using keys or tokens for authentication.
Create a GitHub Actions service account and grant compute admin, workload identity user, and service account admin roles to enable federated Compute Engine VM provisioning with no keys.
Bind the service account to the workload identity federation pool using gcloud IAM policy bindings, connecting the GitHub pool to the project as a workload identity user.
Enable the Compute Engine API, configure a workload identity pool and GitHub Actions provider, and deploy a VM with a GitHub Actions workflow using workload identity federation.
Explore how IAM deny policies explicitly block specific permissions before evaluating allow policies, with examples of developers and contractors and a practical setup for projects, folders, or organizations.
Learn how the Google Cloud SDK simplifies interacting with Google Cloud resources, explore its components like gcloud, client libraries, cloud shell, and cloud code, and create IAM components with Python.
Understand GCP authentication across cloud, local, and non-google environments. Use application default credentials, service accounts, and OAuth2 user authentication in Python, with guidelines and troubleshooting.
Compare the IAM client and IAM async client in Google Cloud Platform for Python developers, covering synchronous vs asynchronous IAM operations on service accounts, keys, and policies.
Compare IAM v1 and v2 in Google Cloud: v1 manages custom rules, service accounts, and allow policies. Enable deny policies via the v2 API.
Install the Google Cloud IAM library in a PyCharm project, then set up authentication via application default credentials, gcloud login, or a service account with a JSON key.
Learn to create custom rules in Google Cloud IAM using Python, granting granular permissions like compute.instances.create while applying least privilege through predefined and custom rule types.
Learn to create a custom IAM rule synchronously in Python, swapping from async to sync with the IAM client, including project id, rule id, title, description, and permissions.
Learn to delete a custom rule in Google Cloud Platform using Python, employing asynchronous and synchronous IAM clients, constructing delete requests using project ID and rule ID, and confirming deletion.
Learn to fetch details of predefined or custom IAM rules in Google Cloud using Python, via get rule request, with async and sync IAM clients.
Learn to list IAM roles with Python using Google Cloud Python client library, including show deleted and view options, paginate, filter, and display role name, title, and permissions.
Learn to create a Google Cloud service account with Python using the create service account request class via the IAM client, specifying project ID, display name, and service account ID.
Learn to create a service account key with Python, understand private keys and RSA public keys, and securely authenticate to Google Cloud APIs with key rotation and access control.
Learn to create a service account key synchronously in Python using the Google Cloud IAM API with the IAM client, specifying the service account and retrieving the private key data.
Learn to delete a Google Cloud service account key with Python by constructing and sending a delete service account key request using project ID, service account email, and key ID.
Disable a Google Cloud service account key with Python using IAM Admin v1 API, constructing the key name from project ID, service account email, and key ID.
Enable a previously disabled Google Cloud service account key via an IAM service enable request, using project ID, service account email, and key ID.
Disable a Google Cloud service account with Python by sending a disable service account request via the IAM Admin v1 API, using project ID and service account email.
Enable a disabled Google Cloud service account with Python using IAM admin v1. Provide project ID and service account email, submit enable request, and verify the account is active.
Learn to retrieve information for a specific service account via the IAM API's get service account method, constructing the service account name from the project ID and service account email.
Learn to list service accounts in a Google Cloud project using the IAM admin v1 Python client, with page size and page token options and a list service account request.
Delete a Google Cloud Platform service account with Python by creating a delete service account request using the IAM async client and supplying the project ID and service account email.
Explore IAM policies inGoogle Cloud, detailing bindings, members, and rules with permissions in JSON format, including ETag, version, conditions, and policy inheritance, plus least privilege and audits.
Learn to assign roles to a Google Cloud service account using the Resource Manager v3 client in Python, including updating IAM policies with owner and editor bindings.
Explore Google Compute Engine, an infrastructure as a service to run virtual machines on Google's scalable network, enabling web hosting, data analysis, and machine learning with GPUs or TPUs.
Explore regions and zones in Google Cloud Compute Engine, learn how regional and zonal resources affect latency, resilience, quotas, and deployment strategies for multi-region and multi-zone setups.
Create VM instances in Google Cloud Compute Engine, compare boot disk types and persistent disks, and review encryption options including Google managed, Cloud KMS, and customer-supplied keys.
Enable the compute engine API, create a linux VM in us-central1-a region with an E2 micro free-tier instance, configure Google-managed encryption, networking, and access scopes.
Manage Linux VM lifecycles by stopping, suspending, resetting, or deleting the instance, while reviewing observability data, network details, and firewall rules for secure access.
Explore VM instance details in Google Cloud, including instance id, location, automatic reservations, deletion protection, and boot disk configuration, with confidential memory encryption and network settings.
Explore Google Cloud machine families organized by workload, including general purpose, storage, compute, memory, and accelerator optimized, with examples like E2, Z3, H3, M3, and E3.
Explore Google Cloud machine types, including predefined standard, high cpu, high memory, ultra high memory, local ssd, bare metal, custom, and shared-core options across multiple series.
Open the linux vm in a browser-based ssh session, explore custom port options and private key authentication, connect with gcloud or external ssh clients, and delete the vm.
Learn to create a Windows Server on Google Cloud Compute Engine by configuring an E2 micro instance with Windows Server desktop experience and a blank 15 GB disk for RDP.
Explore instance templates that save identical vm configurations—machine type, boot disk, image, labels, startup scripts—and how regional and global templates affect deployment and immutability.
Create an instance template, select location, machine configuration (E2 micro), and provisioning model (standard or spot), then create an instance from the template and delete templates when finished.
Discover images and machine images in GCP: images are pre-configured OS snapshots for standardized VM environments, while machine images capture a VM, including boot disk and configurations, for exact replication.
Explore Google Cloud Platform snapshots, point-in-time copies of persistent disks for data protection and disaster recovery. Understand incremental, standard, archive, and instant snapshots and how to create them.
Explore instance groups in Google Cloud Platform for Python developers, detailing managed instance groups and images, auto scaling, autohealing, rolling updates, regional deployment, stateless applications, and use cases.
Create a managed instance group using an instance template, configure autoscaling with a min 1, max 3 and 60% CPU target, and set health checks and auto healing before creating.
Explore Google Compute Engine disks, including persistent disks (SSD and standard), local SSD, and Hyperdisk, with durability, scalability, snapshots, and automatic encryption for VM storage.
Create a disk in Google Cloud Platform by selecting a zone and a source such as blank disk, image, or snapshot; specify size and Google managed encryption key, then create.
Learn how to use Google Cloud Compute Engine with Python to list available accelerator types across regions and zones, using the aggregated list accelerator type request.
Explore two Python approaches to list accelerator types in Google Cloud: use the high-level aggregated list method or build a lower-level accelerator type request for fine-grained control.
Learn to retrieve information about a specific accelerator type in Google Cloud using Python, via the accelerator types client and get accelerator type request to access project and zone details.
Learn to list all disk types across zones in a GCP project using the Compute Engine Python client, retrieving names, descriptions, valid sizes, and deprecation status to choose VM storage.
Fetch disk type information in Google Cloud Compute Engine using Python by sending a get disk type request with project id, zone, and disk type, and read description and size.
Learn to list disk types in a project and zone using the Google Cloud Compute Engine Python client, building a ListDiskTypes request and printing names, descriptions, and disk sizes.
Learn to create a disk in Google Cloud Platform with Python using the compute v1 api, defining name, size, type (hyperdisk balanced), provisioned iops, throughput, and wait for completion.
Learn to create disk snapshots with Python on Google Cloud Platform, capturing a point-in-time, read-only copy for backup, disaster recovery, and data migration, using incremental or copy-on-write techniques.
Learn to resize a persistent disk in Google Cloud via the Compute Engine Python client by creating a resize disk request with project, zone, disk name, and new size.
Learn to delete a Google Cloud disk with Python by using a delete disk request or direct client delete, providing project, zone, and disk name, and awaiting the operation result.
Learn to delete a google cloud compute snapshot with python using a delete snapshot request, including project and snapshot name, waiting for the operation, and confirming deletion.
Create a virtual machine instance in Google Compute Engine with Python by initializing the instances client, setting project id, zone, machine type, source image, and network, then inserting the instance.
Learn to create a Google Cloud VM with the insert instance request method in Compute Engine, configuring project, zone, name, machine type, disk and network settings via the request object.
List Google Cloud vm instances with Python by using the list instances request to specify project and zone, optionally filtering, sorting, and paginating results.
Learn to list all VMs across all zones in a Google Cloud project using the aggregated list instances request with the Python client library.
Learn how to retrieve details for a specific VM using Python with the Google Cloud Compute v1 API, including machine type, status, zone, network interfaces, and network IP.
Suspend a Google Cloud Compute Engine VM using the Python client and suspend instances request, supplying project, zone, instance name, and optional discard local SSD to preserve state for resume.
Learn how to resume a suspended Google Cloud VM instance with Python, using a resume instance request or direct resume calls, configuring project, zone, and instance name.
Attach an existing persistent disk to a Google Cloud VM using the attach disk instance request. Configure project ID, zone, and instance name, plus disk source, mode, and auto delete.
Detach a persistent disk from a VM using the compute v1 client by specifying project, instance name, and device name, and waiting for the detach operation to complete.
Learn how to delete a vm instance with Python using the compute v1 instances client, providing the project id and instance name, and waiting for the operation to complete.
Create instance templates in Google Cloud Compute Engine to standardize VM configurations for consistent environments, MIGs, load balancing, and autoscaling using Python compute v1.
Create a managed instance group in Google Cloud Compute Engine with Python, using an instance template, autohealing, and CPU-based autoscaling.
Learn to delete a managed instance group with Python by building a delete instance group manager request in compute v1, passing project, zone, and instance group name, and confirming deletion.
Learn to delete an instance template with Python by using a delete instance template request, initializing the instance template client, and handling not found exceptions.
Explore Django, a high-level Python web framework with the mvt pattern, built-in admin, orm, authentication, routing, templates, and middleware; then learn to install, create a project and run the server.
Discover how to create views and routes in Django by defining view functions, rendering templates, and wiring URLs via app and project URLs for a Compute Engine deployment.
Install gunicorn to run Django in production, a lightweight Python wsgi HTTP server that interfaces with nginx for scalable deployments on Google Compute Engine, and asgi for async apps.
Push your django project to github by freezing dependencies to requirements.txt, initializing a git repo, and committing changes. Then push files to a public repository.
Create a VM in compute engine, configure a Django instance with region and zone, select Linux 12 and e2 micro, enable http and https firewall rules, then deploy Django project.
Deploy Django part one guides you through preparing a GCP VM, updating packages, installing Nginx and Git, cloning the repo, setting up a virtual env, upgrading pip, and installing requirements.
Configure Django deployment on Compute Engine by updating settings.py with allowed hosts, turning off debug, and creating a systemd Gunicorn service that starts at boot and serves the wsgi app.
Deploy a Django app on compute engine using nginx as a reverse proxy to Gunicorn, configure server name and static files, and reload to verify the app is live.
Resolve the Django static files issue by updating settings.py with a static route, running collectstatic, and creating a super user to access the admin panel.
Discover Flask, a lightweight micro web framework for Python, with minimal code, flexible routing, Jinja2 templates, a development server, and extendable options for authentication, databases, forms, and RESTful APIs.
Learn to set up a Flask project, create app.py, configure an index route, use render_template for index.html, add a templates directory, and deploy the Flask app to Google Compute Engine.
Explore Flask SQLAlchemy, a Python SQL toolkit and ORM that enables database models with Python classes, supports SQLite, MySQL, and Postgres, and enables easy Flask integration and CRUD operations.
Define a book database model in a Flask app using SQLAlchemy, with id as primary key and title, author, and price fields. Initialize SQLAlchemy, create tables, and verify the database.
Use Flask shell to manage data in a Flask app with SQLAlchemy by importing db and the Book model, creating a new book with title, author, and price, then commit.
Learn how to retrieve all books in a Flask front end, render them in a bootstrap-styled table, and wire up update and delete actions with a modal for editing.
Learn template inheritance in Flask by using a base.html with blocks for title and content, extending it in index.html to reduce duplication and keep HTML cleaner.
Learn to add a bootstrap navbar and styles to a Flask app by integrating bootstrap 5.3 via CDN, updating base.html, index.html, and number.html, and wiring a modal for adding books.
Implement a Bootstrap insert book modal with a post form, featuring title, author, and price fields, and integrate it with the navbar to add books efficiently.
Create a Flask post route to insert a book by reading title, author, and price from a form, save to the database, and redirect to index; configure a secret key.
Explore how flask flash messages use the session to display temporary alerts like book added, invalid login credentials, or session expired, then disappear after display.
Create an update model and its dialog to edit a book, featuring a pre populated form with title, author, price, and a hidden id field, using a post action.
Learn to implement updating books in a Flask app by creating an update route, handling post data (title, author, price), committing changes, flashing a message, and redirecting to the index.
Add a deleting workflow for books by id in Python web app: create a delete route, fetch the book, delete with db.session.delete, commit, flash a message, and update index page.
Push your Flask project to GitHub, set host to 0.0.0.0 and port to 5000, install Gunicorn, and create a requirements.txt for deployment to a compute engine.
Create a VM instance in Google Cloud Compute Engine using an E2 micro, Debian 12 image, with no backups and http/https enabled, and launch the instance.
Set up a Flask deployment on a Google Compute Engine VM by configuring venv, nginx, git, cloning the repo, and creating a systemd service to auto-start on reboot.
Deploy a Flask app using Nginx as a reverse proxy to Gunicorn, configure the proxy, test the configuration, restart Nginx, and verify by performing sample add, update, and delete operations.
Are you a Python developer looking to take your skills to the cloud?
In this hands-on course, you'll master Google Cloud Platform (GCP) and learn how to build, deploy and scale real-world applications using Python, Django, and Flask.
This course is designed specifically for Python developers, backend engineers, and full-stack developers who want to use the power of Google Cloud services such as:
Compute Engine
Cloud Run
Cloud SQL
Google Cloud Storage
App Engine
Identity and Access Management (IAM)
GCloud CLI tools
You'll learn how to automate cloud tasks with Python, deploy web apps to virtual machines, serverless platforms, and managed services, and connect your applications to Cloud SQL databases and Cloud Storage buckets.
We’ll start from the basics, setting up a GCP account, billing, IAM roles, and permissions. and then move to advanced topics like deploying production ready apps with Python.
By the end of this course, you’ll confidently know how to:
Set up and manage GCP resources using the GCloud CLI
Deploy Django and Flask apps on Compute Engine, App Engine, and Cloud Run
Use Python to interact with Cloud SQL and Cloud Storage
Automate IAM roles and permissions
Launch scalable, secure, cloud-native applications
This course is packed with real-world projects and deployment scenarios that will help you build your cloud portfolio and prepare for cloud-based job roles.