Guide to deploy containers on Google Cloud Run
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.
Creating the project
Now the fun part begins. Let’s get to the code.
- First create a project folder. In my case, I will be using the name Cloud Run Tutorial.
- Go to the project folder and create a file called requirements.txt and add Flask==1.1.1 to the file.
- Now create a python file called app.py and add the following lines to it.
from flask import Flask
app = Flask(__name__)
@app .route( '/' )
def hello_world():
return 'Hello, World !'
if __name__ = = '__main__' :
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.
- Next create a Dockerfile with the name Dockerfile (without any extension) and add the following lines of code to it.
FROM python:alpine3. 7
COPY . / app
WORKDIR / app
RUN pip install - r requirements.txt
EXPOSE 8080
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 this
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.
Last Updated :
19 Jan, 2022
Like Article
Save Article
Share your thoughts in the comments
Please Login to comment...