Q&A
책을 따라하다가 막히는 부분이 있나요?
질문을 남겨주세요.
이 페이지는 의견 교환을 위해 따로 만든 페이지입니다. 책에서 이 페이지를 만드는 법을 직접적으로 다루지는 않습니다.
하지만, 책을 끝까지 읽고 나면 이 페이지도 만드실 수 있을거에요.
하지만, 책을 끝까지 읽고 나면 이 페이지도 만드실 수 있을거에요.
p.610 err입니다
3 years, 8 months ago
yepp4359책과 같이 이미지는 실행했는데 마이그레이션 실패하고 확인해보니 위와같은 멘트 뜨네요 ㅠ
해결방법 있을까요..?
특이사항이라면 .env.prod를 참조한다고 생각해서 prod랑 prod.db 의 유저이름을 바꿔줘도 똑같이 바뀌기전 이름을 저렇게 찾더라구요
구글링을 좀 해봤는데 남들은 psql 명령어를 써서 금방 해결했다고 하는데
저는 linux2에서 해서그런지 명령어도 못알아듣고.. 아주 억울해죽겠어요
목록보기
taegon 3 years, 8 months ago
안녕하세요.
일단 질문해주신 상황으로 볼 때, 상황을 정확히 인지하시고, 여러 방면으로 문제를 해결해보려고 하신 것 같네요. 첨부하신 스크린샷으로 볼때, 데이터베이스의 아이디와 비번이 매칭이 되지 않아서 생기는 문제로 보이네요.
우선, 말씀하신 것처럼, .env.prod와 .env.prod.db의 정보를 수정하셨으면, 수정된 아이디로 접속하는 것이 보이는 것이 맞습니다. 현재 사용하고 계신 docker-compose.yml에서 두 설정파일명(.env.prod와 .env.prod.db)을 쓰고 있나요?
만약 docker-compose.yml에서 문제가 없다면, 설정정보를 읽어서 제대로 반영되는 것이 맞습니다. 두 설정파일 모두 수정한 게 맞는지요? 설정이 잘 되었다면, 도커를 실행하였을때, 이 정보를 이용하여 아이디가 제대로 표시되어야 합니다. 현재는 "eleclv_db_user"로 접속을 시도하였지만, 접속할 수 없다는 에러메시지 입니다.
혹시 마이그레이션하기 전에 docker-compose를 다시 실행하셨나요? 도커 이미지를 다시 생성할 필요는 없지만, 도커 컨테이너를 다시 실행해주셔야, 설정파일에 쓴 정보가 반영이 됩니다. 아래와 같이 도커 컨테이너를 멈추었다가 다시 구동해주시면 변경된 정보가 반영이 됩니다.
docker-compose down
docker-compose up -d
만약 아이디가 원하는대로 잘 보이시면, 설정파일은 문제가 없고, 데이터베이스에 설정된 아이디와 비번이 문제일 수 있습니다. 작업을 차근차근 진행하면서 데이터베이스를 계속 쓰고 계셨으면, 이전에 작업했던 아이디와 비번으로 이미 데이터베이스가 설정이 되어 있으므로, 바꾸기 전 아이디와 비번을 이용하여 접속하셔야 하고, 검색해 보신 것처럼, psql를 이용하여 아이디와 비번을 추후에 바꾸어주실 수도 있습니다.
현재 상황에서는 db 인스턴스가 정상적으로 실행되는 것으로 보이므로, 도커를 이용해서 접속하실 수 있습니다. 우리는 postgresql을 도커를 이용해서 돌리고 있기 때문에, 우분투든, linux2이든 상관 없이 운영중인 도커 인스턴스에서 실행할 수 있습니다. 너무 억울해하지마세요.
docker-compose exec db psql -d 데이버베이스명 -U 설정하신 DB유저명
이렇게 하시면 postgresql에 접속 하실 수 있구요. 찾아보신 것처럼 psql명령을 이용하여 비밀번호를 변경할 수 있습니다.
여기까지 오셨으면, 웹사이트를 거의 다 만드셨을텐데, 앞으로 어떤 사이트를 만드시고 운영하실지 궁금하네요. 화이팅하세요. 문제가 생기시면 언제든 글 남겨주세요.
고맙습니다.
Updated: March 3, 2021, 3:31 a.m.
yepp4359 3 years, 8 months ago
해결결과 말씀드립니다
docker-compose exec 를 쓰고 적어야하는걸 몰랐었는데 덕분에 잘 알게되었습니다~
해결은 재 빌드 후 기존에 리눅스에 올려놓았던것 제거 하고 새로 빌드 하니까 되었습니다~
Updated: March 4, 2021, 10:08 p.m.
Leave a Comment: