GithubHelp home page GithubHelp logo

tp_docker's Introduction

Trabalho Final - Sistemas Distribuídos (2022-1)

Descrição Inicial

O trabalho consiste na criação de uma aplicação multi-contêiner usando Docker Compose, onde o frontend está em um contêiner, o backend em um segundo contêiner e dois bancos de dados estão em contêiner diferentes (db1 e db2).

A aplicação de frontend depende do backend, que por sua vez depende dos dois bancos de dados(db1 e db2). O backend precisa ter as informações de URL para os dois bancos de dados. As informações do banco de dados são mantidas em volumes separados (db_1 e db_2). A porta 3001 do contêiner frontend é exposta na porta 80 do navegador para acesso pelo endereço http://localhost/.

No frontend o usuário poderá incluir ou remover itens tanto do banco de dados 1 (db1) quanto do banco de dados 2 (db2). Além disso, o usuário poderá comparar se um item está presente nos dois bancos de dados ao mesmo tempo.

Execução

Utilize o comando abaixo para iniciar a aplicação e todos os seus contêineres.

docker compose up -d

Em seguida, acesse a aplicação pelo navegador no endereço:

Observações de Implementação

O frontend é uma SPA exposta na porta 80. Foi desenvolvido com Svelte + Vite.

O backend é uma API exposta na porta 3000. Deve receber chamadas do frontend pelo navegador do usuário. Foi desenvolvido com Node + Express.

O db1 é um banco de dados relacional, gerenciado pelo PostgreSQL.

O db2 é um banco de dados orientado a documentos, gerenciado pelo MongoDB.

tp_docker's People

Contributors

glenn-f avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.