3
respostas

[Reclamação] Serviço CarInventory da AWS fora do ar

O serviço http://ec2-18-215-156-13.compute-1.amazonaws.com:8080/cars-inventory está fora, e acaba dando um timeout na aplicação.

Nós ajuda Alura.

3 respostas

Oi Allan!

Já estamos verificando o serviço na AWS e em breve voltará ao ar.

Para não perder o time do curso eu resolvi criar uma aplicação em NodeJS e subir no dockerhub para "simular" um microsserviço, para mim deu super certo, consegui acompanhar o curso todo sem nenhum prejuízo, deixo o meu repositorio para quem tiver interesse em tentar fazer da mesma maneira

tutorial

  1. Alterei o Dockerfile
  2. Criei um docker-compose.yml
  3. Alterei o url no application-dev.yml ( para os casos onde eu queria rodar o código na IDE mas somente com o containers de MySQL e Redis rodando )
  4. Basta rodar com um docker-compose up --build

https://github.com/evertonSouzaMeli/car-service

Bom dia Everton, eu tentei fazer a instalação, mas ele travou na hora de rodar esse comando:

=> ERROR [build 4/4] RUN mvn -f /usr/src/app/pom.xml clean package -DskipTests        

E apareceu esse código de erro:

 > [build 4/4] RUN mvn -f /usr/src/app/pom.xml clean package -DskipTests:
#0 5.836 POM file /usr/src/app/pom.xml specified with the -f/--file command line argument does not exist
#0 25.27 [INFO] Scanning for projects...
#0 25.32 [ERROR] [ERROR] Some problems were encountered while processing the POMs:
#0 25.32 [FATAL] Non-readable POM /usr/src/app/pom.xml: /usr/src/app/pom.xml (No such file or directory) @

Vou deixar o código que escrivi, seguindo seu tutorial

Dockerfile:

FROM maven:3-openjdk-17 AS build
COPY src /usr/src/app/src
COPY pom.xml /urs/src/app
RUN mvn -f /usr/src/app/pom.xml clean package -DskipTests

FROM openjdk:17
COPY --from=build /usr/src/app/target/*.jar /usr/app/app.jar
EXPOSE 8080
ENTRYPOINT ["java", "-Dspring.profiles.active=dev", "-jar", "/usr/app/app.jar"]

docker-compose.yml

version: "3.8"
services:

  car-server:
    image: evertosilva/car-server:latest
    ports:
      - "3000:3000"

  mysql_db:
    image: mysql:8.0.26
    container_name: mysql_db
    environment:
      MYSQL_DATABASE: car
      MYSQL_ROOT_PASSWORD: root
    ports:
      - "3307:3306"
    cap_add:
      - SYS_NICE

  redis:
    image: redis:bullseye
    container_name: redis
    ports:
      - "6379:6379"

  spring_api:
    container_name: spring_api
    build:
      context: .
      dockerfile: Dockerfile
    ports:
      - "8081:8080"
    environment:
      spring.datasource.url: "jdbc:mysql://mysql_db:3306/car?allowPublicKeyRetrieval=true&useSSL=false"
      spring.datasource.username: "root"
      spring.datasource.password: "root"
      spring.redis.host: "redis"
      host_url: "http://car-service:3000"
    depends_on:
      - mysql_db
      - redis
      - car-server
    restart: on-failure

application-dev.yaml

spring:
  datasource:
    driverClassName: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://localhost:3307/car
    username: root
    password: root
  cache:
    type: redis
  redis:
    host: localhost
    port: 6379

Se vc puder disponibilizar o arquivo com todas as alterações ou dizer que eu errei, irei agradecer demais