2024. 11. 14. 19:55ㆍ문제해결
사건
내가 하고 싶은 건 python manage.py test 였다.
test 파일을 만들고 잘 되는지! 실행을 시켜보고싶었는데 ? 단 하나도 실행되지 않고 에러가 떠버렸다
현상
redis.exceptions.ConnectionError: Error 8 connecting to redis:6379. nodename nor servname provided, or not known.
요런 에러였는데 ... 어... 어떡하지 ?
gpt 슨생님은 Redis 서버 연결이 안 되서 생기는 오류라고 했다
엥? 근데 redis 잘 켜져있는데요 ?
시도
- gpt 선생님이 호스트 이름이 잘 못 되어있는 거 아니냐며 바꿔보라고 했다
껐다가 다시 켰는데 똑같았다 !
왜 안 되는 거냐 으아아아ㅏ
근데? 가만보니까 docker를 실행했는데 오류가 난게 보이는 것...!
뭔데... 저 keyerror는 ㅜ
이 글은 redis 오류를 해결하는 글이니까 ...
저 keyerror 글은 밑에를 확인 하도록 하자 !
https://hsjoo126.tistory.com/75
자 아무튼, keyerror를 해결한 나는 다시 redis 를 보기 시작했다.
- redis 들어가서 PING PONG 잘 되는지 테스트 해보기!
나는 docker로 redis를 실행하고 있으므로.. docker 에 redis 컨테이너 안에 들어가서 테스트를 해야했다
명령어는 다음과 같다
docker exec -it 컨테이너이름 redis-cli
실행해 봤는데? 아무 이상이 없다 ㅜ ping - pong 너무 잘되자너 엉엉 ㅜㅜ
이리 저리 찾아보고 gpt 슨생님도 괴롭히고,, 그러다가 ... 문제를 해결했다!
해결
생각보다 문제는 간단했다.
내가 redis 컨테이너 안에서 PING 을 실행했던 것처럼
web 컨테이너 안에서 test 를 실행하니까 바로 되어버린 것!!
하하 .. 약 4시간의 노력이 흑 ..
나는 docker 안에서 실행한 게 아니라 생 터미널에서 계속 실행하고 있었으니 ...
test.py 가 redis 가 어딨는지 못 찾을 만도 했다 ...
다른 사람들은 나와같은 실수를 하지 않길 바라며..
docker-compose exec web python manage.py test