Sign inSign up

alekey02/barberhub

By alekey02

Updated 4 months ago

API REST para gerenciamento de operações de uma barbearia, desenvolvida com Java 21 e Spring Boot.

Image
Languages & frameworks
API management
Databases & storage
0

130

alekey02/barberhub repository overview

💈 BarberHub API API REST para gerenciamento de operações de uma barbearia, desenvolvida com Java 21 e Spring Boot.

🚀 Funcionalidades

  • Gerenciamento de usuários
  • Cadastro de barbeiros vinculados a usuários
  • Catálogo de serviços
  • Agendamentos com validação de disponibilidade e duração de serviços
  • Avaliações com cálculo automático de média

🛠️ Tecnologias

  • Java 21
  • Spring Boot 4.0.5
  • Spring Data JPA
  • MySQL 8
  • Docker

▶️ Como executar

  1. Crie o arquivo .env:
DB_HOST=db
DB_NAME=barber_hub
DB_USER=seu_usuario
DB_PASSWORD=sua_senha
MYSQL_ROOT_PASSWORD=sua_senha_root
  1. Crie o arquivo docker-compose.yml:
services:
  db:
    image: mysql:8
    container_name: barberhub-db
    environment:
      MYSQL_DATABASE: ${DB_NAME}
      MYSQL_USER: ${DB_USER}
      MYSQL_PASSWORD: ${DB_PASSWORD}
      MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}
    volumes:
      - db:/var/lib/mysql
    healthcheck:
      test: ["CMD", "mysqladmin", "ping", "-h", "localhost"]
      interval: 10s
      timeout: 5s
      retries: 5

  app:
    image: alekey02/barberhub:1.0
    container_name: barberhub-app
    ports:
      - "8080:8080"
    environment:
      DB_HOST: ${DB_HOST}
      DB_NAME: ${DB_NAME}
      DB_USER: ${DB_USER}
      DB_PASSWORD: ${DB_PASSWORD}
    depends_on:
      db:
        condition: service_healthy

volumes:
  db:
  1. Suba os containers:
docker-compose up

🔗 Acesso

  • API: http://localhost:8080
  • Swagger UI: http://localhost:8080/swagger-ui.html

📦 Baixar imagem

docker pull alekey02/barberhub:1.1

Tag summary

Content type

Image

Digest

sha256:4166819f1

Size

124.4 MB

Last updated

4 months ago

docker pull alekey02/barberhub:1.1