Arquitetura escalável para serviços elásticos utilizando Docker Swarm: um estudo de caso

DSpace Repository

A- A A+

Arquitetura escalável para serviços elásticos utilizando Docker Swarm: um estudo de caso

Show full item record

Title: Arquitetura escalável para serviços elásticos utilizando Docker Swarm: um estudo de caso
Author: Citadin, Maurício Silva
Abstract: Este trabalho apresenta o desenvolvimento e implementação de uma infraestrutura containerizada completa para aplicações web de monitoramento e gerenciamento, fundamentada em princípios de automação, escalabilidade e segurança. O objetivo consiste em projetar e implantar um sistema backend escalável em VPS utilizando tecnologias de containerização Docker e orquestração Docker Swarm, integrado a pipeline de CI/CD através do GitLab, complementado por interface frontend desenvolvida em ReactJS para visualização de dados persistidos em banco MySQL. A metodologia abrange a configuração de repositório GitLab com definição de pipelines automatizados para construção e publicação de imagens em registro de contêineres, implementação de orquestração distribuída de serviços através do Docker Swarm e configuração de stack completa de microsserviços. A arquitetura implementa o Traefik como proxy reverso inteligente com gerenciamento automático de certificados TLS via Let’s Encrypt, o Portainer como interface de administração visual para gerenciamento de contêineres e recursos, e o broker Mosquitto-MQTT para comunicação assíncrona em tempo real. O desenvolvimento inclui configuração avançada de DNS com mapeamento de subdomínios, implementação de certificados SSL automatizados, configuração de firewall UFW com políticas de segurança restritivas e geração de pares de chaves criptográficas para autenticação SSH segura. Os resultados demonstram uma infraestrutura robusta e escalável, adequada para ambiente de produção com capacidades de implantação contínua automatizada e gerenciamento simplificado através de interfaces web, estabelecendo fundação sólida para extensões futuras do sistema e integração de novas funcionalidades.This work presents the development and implementation of a complete containerized infrastructure for monitoring and management-oriented web applications, grounded in principles of automation, scalability, and security. The objective is to design and deploy a scalable backend system on a VPS using Docker containerization technologies and Docker Swarm orchestration, integrated with a CI/CD pipeline through GitLab and complemented by a frontend interface developed in ReactJS for visualizing data persisted in a MySQL database. The methodology includes configuring a GitLab repository with automated pipelines for building and publishing images to a container registry, implementing distributed service orchestration through Docker Swarm, and setting up a complete microservices stack. The architecture employs Traefik as an intelligent reverse proxy with automatic TLS certificate management via Let’s Encrypt, Portainer as a visual administration interface for container and resource management, and the Mosquitto-MQTT broker for real-time asynchronous communication. The development also involves advanced DNS configuration with subdomain mapping, automated SSL certificate provisioning, UFW firewall configuration with restrictive security policies, and the generation of cryptographic key pairs for secure SSH authentication. The results demonstrate a robust and scalable infrastructure suitable for production environments, with automated continuous deployment capabilities and simplified management through web interfaces, establishing a solid foundation for future system extensions and the integration of new functionalities.
Description: TCC (graduação) - Universidade Federal de Santa Catarina, Campus Blumenau, Engenharia de Controle e Automação.
URI: https://repositorio.ufsc.br/handle/123456789/271544
Date: 2025-12-12


Files in this item

Files Size Format View Description
TCC_main_FINAL_ASSINADO.pdf 3.287Mb PDF View/Open TCC

This item appears in the following Collection(s)

Show full item record

Search DSpace


Browse

My Account

Statistics

Compartilhar