인프런 커뮤니티 질문&답변

노희석님의 프로필 이미지

작성한 질문수

개발자를 위한 쉬운 도커

Leafy 애플리케이션 구성

leafy 사이트 로그인 에러 문의

해결된 질문

작성

·

392

1

안녕하세요.

 

leafy 사이트 로딩까지 하였고 DB 백엔드, 프론트엔드까지 도커실행 완료했어요..

 

근데 사이트 로그인이 안되네요 ㅋㅋㅋ

id : john123@qmail.com

pw: password123

 

이걸 아무리 여러번 쳐도 똑같아요..
1. 궁금한게 postgre DB를 도커에서 다운받으면 초기 데이터가 들어가있는걸까요??

  1. 이거 로그인이 안되서 postgre DB를 살펴보고 싶은데 docker 실행중인 DB 데이터 확인할수 있는 방법 있을까요?

 

답변 5

1

노희석님의 프로필 이미지
노희석
질문자

안녕하세요. 강의에 나온대로 postgres 먼저 실행하고서 backend 실행하고 fronted 실행하였습니다.

그런데도 똑같이 안되네요 ㅠ

 

 

 

데브위키님의 프로필 이미지
데브위키
지식공유자

흠 이상하네요,, 희석님도 로그인이 안되시는거죠? 혹시 윈도우 환경이신가요?

1

저도 동일하게 로그인이 안되는 현상이 있습니다!

docker exec -it leafy-Postgres /bin/bash를 하고 postgresql에 접속할려고 하는데 root 계정이 없다고 하더라고요… 강사님 피드백 부탁드립니다!

 

데브위키님의 프로필 이미지
데브위키
지식공유자

DB접근 명령어 공유 드립니다! 다만 user테이블의 password필드 같은 경우 암호화가 되어 있어서 값을 바로 확인하기 어렵습니다.

 

# leafy-postgres 컨테이너로 명령어 실행
docker exec -it leafy-postgres su postgres bash -c "psql --username=myuser --dbname=mydb"
# 비밀번호: mypassword

# 데이터 조회
mydb=# SELECT * FROM users;
mydb=# SELECT * FROM plants;
mydb=# SELECT * FROM user_plants;
mydb=# SELECT * FROM plant_logs;

 

혹시 SELECT * FROM users; 명령을 실행했을 때, 아래와 다른 정보가 나올까요?
image

비밀번호가 저렇게 표시되어 있으면 password123 이 맞기 때문에 다른 곳에 문제가 있을 가능성을 의심해 보아야 할 것 같습니다!

 

0

노희석님의 프로필 이미지
노희석
질문자

안녕하세요!

라즈베리파이에서 docker 실행 후에 맥이나 아이패드에서 홈페이지 접속해서 진행하고 있어요!

docker 실행 후에 브라우저에서

/api/v1/users 를 실행하니 두번째 스크린샷에 유저정보가 나왔어요.

 

그런데 로그인 화면에서 로그인 버튼을 누르면 백엔드 logs가 아무것도 나오지 않는거 봐서 front-> back server로 가는 쪽에서 뭔가 이상이 있지 않나 싶긴한데 제가 vue쪽을 몰라가지고 음..docker ps로도 실행된 상태이고 로그로 봤을때 DB먼저 실행 후 backend docker 실행하니깐 정상적으로 작동은 되거든요..혹시 데브 위키님은 지금 잘 되시나요??

데브위키님의 프로필 이미지
데브위키
지식공유자

네 윈도우, 맥OS환경에서 모두 테스트 해보았습니다!

제가 예상하기로는 실행하는 환경(라즈베리파이)과 접속하는 환경(맥)이 다르기 때문으로 보입니다.

프론트엔드 소스코드에는 백엔드 주소가 localhost:8080로 되어있기 때문에, 실제로 접속한 맥북이나 아이패드에서는 백엔드 주소로 접근을 할수 없게 됩니다.😀

이경우 소스코드 내 백엔드 주소를 적절한 IP로 변경하거나, 실무 파트에서 소개해드리는 Nginx 프록시를 구성해야 할 것 같습니다.

 

아래는 프론트앤드 소스코드에 localhost:8080으로 지정한 부분입니다.

image

이 부분은 실제로 웹 서버에 접근하는 클라이언트(현재 구조에서는 라즈베리파이에 접근하는 맥북이나 아이패드)가 localhost:8080으로 접근하기 때문에, 이 주소를 라즈베리파이의 IP:8080으로 수정하시면 정상적으로 백엔드 연결이 되실 것 같습니다!

0

데브위키님의 프로필 이미지
데브위키
지식공유자

1. 궁금한게 postgre DB를 도커에서 다운받으면 초기 데이터가 들어가있는걸까요??

= 네 leafy 레파지토리의 init/init.sql 파일에 초기 데이터가 들어 있습니다!

https://github.com/daintree-henry/leafy/blob/main/leafy-postgresql/init/init.sql

image

0

데브위키님의 프로필 이미지
데브위키
지식공유자

노희석님, 정회운님 안녕하세요. 데브위키입니다.

확인해보니 leafy 애플리케이션이 leafy-postgres 애플리케이션이 준비되기 전에 실행되어서 종료된 경우로 보입니다!

현재 컨테이너의 상태를 확인하신 후, 백엔드 컨테이너를 다시 시작하시면 정상적으로 로그인이 되실 것 같습니다 :)

$ docker ps
$ docker start leafy