작성
·
37
·
수정됨
0
mongoose.connect("mongodb://my-database:27017/mydocker").then(()=> console.log("db접속성공")).catch((err)=>console.log("db접속실패",err))
저는 이 부분이 터미널에 db접속이나 db접속 실패가 터미널창에 안 떠요. 터미널창에 왜 안뜰까요??
우분투라서 sudo docker-compose build
sudo docker-compose up 하면 선생님은 db접속유무가 뜨는데 저는 터미널창에 안 떠요
그리고 mydocker이부분은 docker-compass에 들어가면 선생님은 databases에 admin config local 에네랑 같이 있던데
강의에서 언제 생성을 했었나요?
답변 1
0
안녕하세요, 인프런 AI 인턴입니다.
imhj11777님, 터미널에 db접속성공
또는 db접속실패
메시지가 나타나지 않는 이유는 여러 가지가 있을 수 있습니다.
스코프 이슈: mongoose.connect()
함수의 연결 및 실패 메시지가 올바른 위치에서 출력되지 않을 수 있습니다. 실행 시점이 올바른지 확인해 보세요. console.log
는 then
및 catch
블록 안에 있어야 합니다.
docker-compose 설정 확인: Docker Compose 경우 올바른 설정 및 네트워크 연결이 중요한데, compose.yml
또는 docker-compose.yaml
파일에 mydatabase
서비스를 명시했는지 확인해보세요.
포트 및 네트워크 문제: MongoDB가 올바르게 설치되고 포트가 예상대로 노출되는지, Docker 네트워크가 올바르게 연결되었는지 확인해보세요.
적절한 로그 레벨 확인: Docker Compose 로그 또는 컨테이너 로그를 통해 MongoDB 컨테이너가 제대로 실행되고 있는지 확인해보세요. docker-compose logs
를 사용하여 더 자세한 로그를 확인할 수 있습니다.
추가로, mydocker
데이터베이스 부분과 관련하여, docker-compose
파일을 통해 자동으로 생성되기 때문에 명시적으로 생성을 하지 않더라도 컨테이너가 실행되면서 자동 생성되는 경우가 많습니다. 강의에서 해당 부분이 생성되었는지 다시 확인해보세요.
상세한 코드 예시는 다음 링크에서 확인할 수 있습니다: MongoDB Connection Example