{"id":25898238,"url":"https://github.com/clebsf/desafio9","last_synced_at":"2025-03-03T00:17:43.322Z","repository":{"id":188600429,"uuid":"202923974","full_name":"clebsf/desafio9","owner":"clebsf","description":null,"archived":false,"fork":false,"pushed_at":"2019-08-17T19:34:07.000Z","size":3204,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-21T01:39:24.538Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/clebsf.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2019-08-17T19:33:32.000Z","updated_at":"2019-08-17T19:34:09.000Z","dependencies_parsed_at":"2023-08-16T04:07:23.838Z","dependency_job_id":null,"html_url":"https://github.com/clebsf/desafio9","commit_stats":null,"previous_names":["byclebert/desafio9","clebsf/desafio9"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clebsf%2Fdesafio9","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clebsf%2Fdesafio9/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clebsf%2Fdesafio9/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clebsf%2Fdesafio9/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/clebsf","download_url":"https://codeload.github.com/clebsf/desafio9/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241587832,"owners_count":19986628,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-03-03T00:17:42.718Z","updated_at":"2025-03-03T00:17:43.313Z","avatar_url":"https://github.com/clebsf.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Desafio 09 | Banco do Brasil\n\n- [Desafio 09 | Banco do Brasil](#desafio-09--banco-do-brasil)\n  - [Para te ajudar](#para-te-ajudar)\n  - [1 - Introdução](#1---introdu%c3%a7%c3%a3o)\n  - [2 - Desafio](#2---desafio)\n  - [3 - Pré-requisitos](#3---pr%c3%a9-requisitos)\n  - [4 - Primeira etapa](#4---primeira-etapa)\n  - [5 - Subindo a Página no OpenShift](#5---subindo-a-p%c3%a1gina-no-openshift)\n  - [6 - Deletar o projeto](#6---deletar-o-projeto)\n  - [Material de apoio](#material-de-apoio)\n  - [Troubleshooting](#troubleshooting)\n  - [License](#license)\n\n## Para te ajudar\n\n* [Material de Apoio](#material-de-apoio)\n* [Troubleshooting](#troubleshooting)\n* [License](#license)\n## 1 - Introdução\nO Banco do Brasil, maior banco da América Latina, com destaque em segmentos como agronegócio, infraestrutura, micro e pequenas empresas.\nO seu maior propósito é estar próximo das pessoas e ajudar a preservar o que é importante para seus clientes, acionistas, funcionários e toda a sociedade.\nPor esta razão, pensando no pequeno e médio agricultor, que muitas vezes não tem acesso, desconhece ou não tem capacidade financeira para contratar soluções robustas que os auxiliem na gestão e monitoramento de seus processos produtivos, o Banco do Brasil quer desenvolver solução de baixo custo, para que estes proprietários através do controle de temperatura e umidade do solo, possam planejar melhor sistemas de irrigação baseado no tipo do produto, além de sistema de reconhecimento de pragas e qualidade do plantio através de processamento de imagens capturadas com drones.\n\n\n## 2 - Desafio\nNesta solução deverá ser usado, kit com microcontrolador com sensor de temperatura ambiente e umidade do solo, Watson IoT Platform para integração e gerenciamento dos sensores / devices, container na plataforma OpenShift para hospedar programa de gerenciamento e controle, desenvolvido em Python com Flask, Watson Studio para desenvolvimento de modelos de aprendizado de máquina profundo, utilizando Jupyter Notebook e Python, Watson Machine Learning para utilização do modelo gerado, e novamente container em OpenShift para expor API em Python com Flask para processar as imagens.\n\n\u003cdiv align=\"center\"\u003e\n    \u003cimg width=\"750\" src=\"assets/arquitetura-iot.png\" /\u003e\n    \u003cp\u003eImagem 1: Arquitetura IOT.\u003c/p\u003e\n\u003c/div\u003e\n\u003cdiv align=\"center\"\u003e\n    \u003cimg width=\"750\" src=\"assets/arquitetura-ai.png\" /\u003e\n    \u003cp\u003eImagem 2: Arquitetura AI.\u003c/p\u003e\n\u003c/div\u003e\n\u003cbr\u003e\n\u003cbr\u003e\n\u003cbr\u003e\n\n\n## 3 - Pré-requisitos\n\nVocê deverá cumprir os seguintes itens:\n\n- Instalar e configurar [Python 3.6](https://www.python.org/downloads/release/python-360/) ou mais recente;\n- Instalar e configurar o [Postman](https://www.getpostman.com/downloads/) para testar sua solução;\n- Ter uma conta no [GitHub](https://github.com/) ou criar uma nova;\n- Ter Conhecimentos gerais de [Tensor Flow](https://www.tensorflow.org/api_docs), [Keras](https://keras.io/) e [Numpy](https://www.numpy.org/doc/); \n- Ter conhecimentos gerais em [Red Hat OpenShift](https://learn.redhat.com/) para subir a aplicação;\n\n## 4 - Primeira etapa\nPrimeiramente, você deverá criar um novo repositório no GitHub. Abra sua conta no GitHub e clique em `Start Project`. Dê um nome para seu repositório e selecione a opção `Private`, para evitar que sua solução seja copiada. Por fim, clique em Create repository.\n \u003cdiv align=\"center\"\u003e\n    \u003cimg width=\"750\" src=\"assets/main-git.PNG\" /\u003e\n    \u003cp\u003eImagem 3: Start a Project\u003c/p\u003e\n\u003c/div\u003e\n\u003cdiv align=\"center\"\u003e\n    \u003cimg width=\"750\" src=\"assets/creating-git.PNG\" /\u003e\n    \u003cp\u003eImagem 4: Criação do repositório\u003c/p\u003e\n\u003c/div\u003e\nAgora, você deverá importar o código deste repositório para o seu. Para isso, clique em Import Code e cole a URL do repositório do desafio 9. Clique em Begin Import e aguarde o processo ser concluído. Quando concluído, volte para seu repositório e veja seu código.\n\n\u003cdiv align=\"center\"\u003e\n    \u003cimg width=\"750\" src=\"assets/new-repo.PNG\" /\u003e\n    \u003cp\u003eImagem 5: Novo repositório do gitHub\u003c/p\u003e\n\u003c/div\u003e\n\u003cdiv align=\"center\"\u003e\n    \u003cimg width=\"750\" src=\"assets/import.PNG\" /\u003e\n    \u003cp\u003eImagem 6: Criação do repositório\u003c/p\u003e\n\u003c/div\u003e\n\n## 5 - Subindo a Página no OpenShift\nO Openshift é uma plataforma Open Source desenvolvida pela Red Hat utilizada para a orquestração de containers baseada em Kubernetes. Em outras palavras,é uma plataforma que te permite fazer o deploy de suas imagens sem se preocupar com infraestrutura. Atualmente, esta ferramenta também está presente na IBM Cloud.\n\nPara este desafio, será necessário subir sua página  no OpenShift na IBM Cloud. Para isso,abra o portal da IBM Cloud e troque sua conta para 1960796 - IBM PoC - Maratona Behind the Code.\n\u003cdiv align=\"center\"\u003e\n    \u003cimg width=\"750\" src=\"assets/trocar-conta.PNG\" /\u003e\n    \u003cp\u003eImagem 7: Selecionando a conta\u003c/p\u003e\n\u003c/div\u003e\n\nApós selecionada, o dashboard será atualizado, e o recurso \"Cluster de Kubernetes\" irá aparecer. Clique em `Cluster de Kuernetes` e então, selecione o `d9`.\n \u003cdiv align=\"center\"\u003e\n    \u003cimg width=\"750\" src=\"assets/nova-conta.PNG\" /\u003e\n    \u003cp\u003eImagem 8: Dashboard atualizado. \u003c/p\u003e\n\u003c/div\u003e\n\n \u003cdiv align=\"center\"\u003e\n    \u003cimg width=\"750\" src=\"assets/clusters-do-kubernetes.PNG\" /\u003e\n    \u003cp\u003eImagem 9: OpenShift d9\u003c/p\u003e\n\u003c/div\u003e\n\n\nVocê será direcionado para o painel do OpenShift na IBM Cloud. Nesta tela você pode obter algumas informações sobre seu cluster. Para prosseguir o processo, clique em `Console da Web do OpenShift` para ser direcionado ao Web Console do OpenShift.\nVocê também pode abrir o console pelo seguinte link: https://red.ht/desafiofinal\n \u003cdiv align=\"center\"\u003e\n    \u003cimg width=\"750\" src=\"assets/dash.PNG\" /\u003e\n    \u003cp\u003eImagem 10: Painel do OpenShift na IBM Cloud\u003c/p\u003e\n\u003c/div\u003e\n\n \u003cdiv align=\"center\"\u003e\n    \u003cimg width=\"750\" src=\"assets/main-openshift.PNG\" /\u003e\n    \u003cp\u003eImagem 11: Console do OpenSift\u003c/p\u003e\n\u003c/div\u003e\n\nAgora, podemos um projeto. Clique em Create Project.  Escolha um nome de sua preferência para o projeto e clique em Create\n\n \u003cdiv align=\"center\"\u003e\n    \u003cimg width=\"750\" src=\"assets/create_project.PNG\" /\u003e\n    \u003cp\u003eImagem 12: Criação do projeto\u003c/p\u003e\n\u003c/div\u003e\n\n \u003cdiv align=\"center\"\u003e\n    \u003cimg width=\"750\" src=\"assets/overview1.PNG\" /\u003e\n    \u003cp\u003eImagem 13: Overview do projeto\u003c/p\u003e\n\u003c/div\u003e\n\nNa página de Overview, clique em Browse Catalog para continuar o deploy da aplicação. Você será direcionado para um catalogo. Procure pela opção \"Python\" (apenas Python) e selecione esta opção.\n\n \u003cdiv align=\"center\"\u003e\n    \u003cimg width=\"750\" src=\"assets/python.PNG\" /\u003e\n    \u003cp\u003eImagem 14: Selecionando o modelo Python\u003c/p\u003e\n\u003c/div\u003e\n\nQuando selecionada, clique em next na etapa de `Information`. Em `Configuration` dê o nome da sua aplicação. `Este nome deverá ser seu id (OBS: Seu novo ID)`. Em Git Repository, coloque a URL do seu repositório criado após dar o Fork neste repositório. IMPORTANTE: Antes de clicar em next, clique em `Advanced Options`. \n\n\u003cdiv align=\"center\"\u003e\n    \u003cimg width=\"750\" src=\"assets/configuration.PNG\" /\u003e\n    \u003cp\u003eImagem 15: Nomeando a aplicação\u003c/p\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n    \u003cimg width=\"750\" src=\"assets/advanced_options.PNG\" /\u003e\n    \u003cp\u003eImagem 16: Advanced Options\u003c/p\u003e\n\u003c/div\u003e\n\nEm Advanced Options, clique em `Create New Secret` e coloque seu usuário e senha do github. O Secret basicamente serve para guardar informações confidênciais em seu container.  Dê um nome ao seu secret e clique em create. \n\n\u003cdiv align=\"center\"\u003e\n    \u003cimg width=\"750\" src=\"assets/new-secret.PNG\" /\u003e\n    \u003cp\u003eImagem 17: Criando um secret\u003c/p\u003e\n\u003c/div\u003e\n\nPara finalizar o processo, clique em Create. Após criado, clique novamente em Overview e procure pela aplicação que você criou. Espere até que fique azul ao lado de `pod`. Quando isso acontecer, clique na URL ao lado do nome da aplicação e você será direcionado para a página onde terá instruções sobre as próximas etapas necessárias.\n\n\u003cdiv align=\"center\"\u003e\n    \u003cimg width=\"750\" src=\"assets/overview2.PNG\" /\u003e\n    \u003cp\u003eImagem 18: Overview 2\u003c/p\u003e\n\u003c/div\u003e\n\n\n## 6 - Deletar o projeto\n**OBS: Esta etapa deve ser seguida apenas se você quiser deletar e criar novamente seu projeto.** \nCaso tenha cometido algum erro e deseje refazer seu deploy, delete seu projeto e crie novamente o projeto e a aplicação. Para deletar seu projeto, clique no logo no canto superior esquerdo do seu console, selecione os três pontos ao lado do projeto que deseja deletar e clique em `Delete Project`. Digite o nome do projeto na caixa de diálogo e confirme, e ele será marcado para ser deletado. Após isso, basta seguir novamente o processo de criação de projeto.\n## Material de apoio\n- [Creating a Red Hat OpenShift on IBM Cloud cluster](https://cloud.ibm.com/docs/openshift?topic=openshift-openshift_tutorial)\n- [Watson IOT Plataform - Python](https://ibm-watson-iot.github.io/iot-python/application/)\n-  [Keras](https://ibm-watson-iot.github.io/iot-python/application/)\n-  [Tensor Flow](https://www.tensorflow.org/guide/)\n## Troubleshooting\n\n1. O Console da Web do OpenShift não abriu ao clicar na opção? \n\n    Resposta: **Abra pelo seguinte link: https://red.ht/desafiofinal**\n\n    \u003cbr\u003e\n2. Errei ao criar minha aplicação, o que devo fazer?\n    Resposta: **Neste caso, [delete seu projeto](#6---deletar-o-projeto) e crie um novamente.**\n\n\n\n## License\n\nCopyright 2019 Maratona Behind the Code\n\n   Licensed under the Apache License, Version 2.0 (the \"License\");\n   you may not use this file except in compliance with the License.\n   You may obtain a copy of the License at\n\n       http://www.apache.org/licenses/LICENSE-2.0\n\n   Unless required by applicable law or agreed to in writing, software\n   distributed under the License is distributed on an \"AS IS\" BASIS,\n   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n   See the License for the specific language governing permissions and\n   limitations under the License.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fclebsf%2Fdesafio9","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fclebsf%2Fdesafio9","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fclebsf%2Fdesafio9/lists"}