Vou dar uma olhada aqui, mas na aula ele criou um arquivo Dockerfile para todo o projeto, apontando para cópia no container somente o arquivo executável do projeto.
Esse foi o código que ele criou em aula e inseriu no docker-compose.yml
FROM golang:1.22
EXPOSE 8080
WORKDIR /app
COPY ./main /app/main
CMD [ "./main" ]
Esse é o arquivo do Docker compose depois da alteração que ele fez:
services:
postgres:
image: "postgres"
environment:
- POSTGRES_USER=root
- POSTGRES_PASSWORD=root
- POSTGRES_DB=root
ports:
- 5432:5432
volumes:
- ./postgres-data:/var/lib/postgresql/data
app:
#procurar na mesma pasta em que o Dockercompose está sendo executado irá procurar o arquivo DockerFile
build: .
ports:
- 8080:8080
#o serviço depende do postgres
depends_on:
- postgres
environment:
- DB_HOST=postgres
- DB_USER=root
- DB_PASSWORD=root
- DB_NAME=root
- DB_PORT=5432
A propósito, valeu mesmo aí por ajudar. Muito obrigado!