Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Docker Compose com Spring Boot e MonngoDB

Estou tentando criar um exemplo do docker-compose.

Esse é o meu docker-compose.yml:

version: "2.0"
services:
  springboot:
    build: .
    container_name: star-wars-api
    ports:
      - 8182:8080
    depends_on:
      - mongo
    networks:
      - app-tier
  mongo:
    image: mongo
    container_name: star-wars-mongodb
    ports:
      - 27018:27017
    environment:
      MONGODB_APPLICATION_DATABASE: db_star_wars
    networks:
      - app-tier
    command: mongod --smallfiles --logpath=/dev/null # --quiet
networks:
  app-tier:
    driver: bridge

Só que já mexi em várias configurações e não encontrei exatamente onde tenho que alterar:

Essa é a configuração no meu application.properties no spring-boot:

spring.data.mongodb.database=db_star_wars

spring.data.mongodb.uri=mongodb://mongo:27018

A mensagem de erro é essa:

Invalid mongo configuration, either uri or host/port/credentials must be specified
3 respostas

Olá Deyve, blz?

Tente alterar isso

spring.data.mongodb.uri=mongodb://mongo:27018

para isso

spring.data.mongodb.uri=mongodb://mongo:27017

[]s

Já havia tentado isso antes

solução!

Desculpem a demora em responder, consegui realizar a configuração. Meus arquivos finais:

Dockerfile

FROM openjdk:8-alpine

MAINTAINER Deyve Vieira

RUN apk update && apk add bash

RUN mkdir -p /opt/app

ENV PROJECT_HOME /opt/app

COPY target/star-wars-api.jar $PROJECT_HOME/star-wars-api.jar

WORKDIR $PROJECT_HOME

CMD ["java", "-jar", "-Dspring.profiles.active=prod" ,"./star-wars-api.jar"]

docker-compose.yml

version: "2.0"
services:
  springboot:
    build: .
    environment:
      - SPRING_DATA_MONGODB_URI=mongodb://mongo:27017/db_star_wars
    container_name: star-wars-api
    ports:
      - 8182:8080
    depends_on:
      - mongo
    links:
      - mongo
    networks:
      - spring-mongo-net
  mongo:
    image: mongo
    container_name: star-wars-mongodb
    ports:
      - 27017:27017
    command: mongod --smallfiles --logpath=/dev/null # --quiet
    networks:
      - spring-mongo-net
networks:
  spring-mongo-net:
    driver: bridge