├── Dockerfile ├── README.md ├── app.py ├── cloudbuild.yaml └── requirements.txt /Dockerfile: -------------------------------------------------------------------------------- 1 | # Use the official Python image as a parent image 2 | FROM python:3.8-slim 3 | 4 | # Set the working directory in the container 5 | WORKDIR /app 6 | 7 | # Copy the requirements file into the container at /app 8 | COPY requirements.txt . 9 | 10 | # Install the required packages 11 | RUN pip install --no-cache-dir -r requirements.txt 12 | 13 | # Copy the current directory contents into the container at /app 14 | COPY . . 15 | 16 | # Expose the port the app runs on 17 | EXPOSE 8080 18 | 19 | # Define the command to run the application 20 | CMD ["python", "app.py"] 21 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Coding the Future - Terraform 2 | 3 | # Pré requisitos 4 | 5 | * Ter Conta GCP com projeto criado 6 | * Ter conhecimentos de Docker 7 | * Ter conhecimentos de python 8 | 9 | 10 | # Tecnologias: 11 | 12 | 13 | * Python https://www.python.org/ 14 | * Python Flask https://flask.palletsprojects.com/en/2.3.x/ 15 | * Docker https://www.docker.com/ 16 | * Terraform https://registry.terraform.io/providers/hashicorp/google/latest/docs 17 | * Cloud Run https://cloud.google.com/run 18 | * Cloud Build https://cloud.google.com/build 19 | * Chat GPT https://chat.openai.com/ 20 | * Chat Bard https://bard.google.com/ 21 | * Google Cloud Shell https://ide.cloud.google.com/ 22 | 23 | # Criação de Aplicação da aplicação; Python, Flask e Docker 24 | 25 | 1. Entre no Chat GPT e Bard: https://chat.openai.com/ e https://bard.google.com/ 26 | 2. Digite a sentença: Sou um desenvolvedor e preciso criar um exemplo de aplicação Python utilizando o framework flask essa aplicação deve rodar em Docker respondendo na porta 8080. Não esqueça das dependencias e de tudo que é necessário para a aplicação funcionar. 27 | 3. Siga os passos do Chat Bard utilizando [Google Clod Shell]. 28 | 4. Siga os passos do Chat GPT utilizando [Google Clod Shell]. 29 | 30 | 31 | # Salvando o código no Git 32 | 33 | 1. Entre no Chat GPT e Bard: https://chat.openai.com/ 34 | 2. Digite a sentença: Sou um devops e preciso salvar meu código no Github utilizando o ssh do git com sistema operacional linux. 35 | 36 | # Criando Pipeline Cloud Build 37 | 1. Entre no Chat GPT e Bard: https://chat.openai.com/ 38 | 39 | 2. Digite a sentença: Sou um devops e preciso criar um terraform parar criar o cloud build do meu projeto que está salvo no github git@github.com:carlosrgomes/appexemplolive.git meu projeto precisa ser compilado em Docker. 40 | 41 | 42 | # Alterando o terraform para deploy no cloud run 43 | 1. Entre no Chat GPT e Bard: https://chat.openai.com/ 44 | 45 | 2. Digite a sentença: Agora preciso que o terraform faça deploy no cloud run 46 | -------------------------------------------------------------------------------- /app.py: -------------------------------------------------------------------------------- 1 | from flask import Flask 2 | 3 | app = Flask(__name__) 4 | 5 | @app.route('/') 6 | def hello(): 7 | return "Hello, Docker Flask App!" 8 | 9 | if __name__ == '__main__': 10 | app.run(host='0.0.0.0', port=8080) 11 | -------------------------------------------------------------------------------- /cloudbuild.yaml: -------------------------------------------------------------------------------- 1 | steps: 2 | - name: "gcr.io/cloud-builders/docker" 3 | args: ["build", "-t", "gcr.io/${_PROJECT_ID}/meuprojetopython", "."] 4 | - name: "gcr.io/cloud-builders/docker" 5 | args: ["push", "gcr.io/${_PROJECT_ID}/meuprojetopython"] 6 | -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- 1 | flask --------------------------------------------------------------------------------