Guide to deploy containers on Google Cloud Run (original) (raw)

Last Updated : 12 Jul, 2025

Google Cloud Run is one of the fast and scalable solution for your API deployment over secure https connection and can be considered as first choice of every developer. Well firebase is for static websites, right? What if we can deploy Dynamic websites on firebase too? All you need is Cloud Run. Here, in this tutorial we will be showing you how you can deploy a simple website on Cloud Run. we will be using Flask for the website. First set-up your system with Google Cloud SDK. If you don't know how to do it I recommend you read through their official documentation here.

Enable Cloud Run API

Next you need to enable the Cloud Run API.

After all these steps are done your page should look something like this

CLOUD RUN API

Creating the project

Now the fun part begins. Let's get to the code.

importing Flask

from flask import Flask
app = Flask(name)

specifying the route

@app.route('/')
def hello_world():
return 'Hello, World !'

this if block make sure that Flask app runs

only if the file is executed directly

if name == 'main':
# exposing port 8080 of localhost
app.run(host ='0.0.0.0', port = 8080)
`
If you have any confusion with the above code or want to learn more I prefer you read the flask documentation here.

#pulls python 3.7’s image from the docker hub
FROM python:alpine3.7
#copies the flask app into the container
COPY . /app
#sets the working directory
WORKDIR /app
#install each library written in requirements.txt
RUN pip install -r requirements.txt
#exposes port 8080
EXPOSE 8080
#Entrypoint and CMD together just execute the command
#python app.py which runs this file
ENTRYPOINT [ "python" ]
CMD [ "app.py" ]
`

Deploy the project

Now your project is ready to be deployed. To deploy it to Google Cloud Run, we need to containerize the project and the container to Google Container Registry (gcr). Let's see how it can be done.

Output-

If you have done all the steps correctly then, your Cloud Run page should look something like thisFinal Cloud Run

Congratulations! You have just deployed an application packaged in a container image to Cloud Run. Cloud Run automatically and horizontally scales your container image to handle the received requests, then scales down when demand decreases.