Error code 521

Untitled

SSL 인증서를 발급 받고 nginx 서버에 적용했더니 521 에러가 발생했다. 호스트, 즉 웹 서버가 제대로 동작하지 않으므로 nginx와 nest 컨테이너의 동작을 확인해보자.

1️⃣ 도커 컨테이너는 제대로 떠있을까?

docker ps를 통해 nginx, nest 컨테이너가 실행중인지 확인해보자.

실행 결과, nginx와 nest가 잘 떠있는 걸 확인할 수 있었고, docker logs [container_id]를 통해 컨테이너도 문제 없다는 걸 확인했다.


2️⃣ nginx 컨테이너가 nest 컨테이너를 잘 찾고 있을까?

앞 단계에서 두 컨테이너가 모두 잘 실행되는 걸 확인했으니 nginx가 nest 컨테이너에 접속할 수 있는지 확인이 필요하다. 5d95a840b0ba는 nginx 컨테이너의 아이디다. 현재 nginx 설정에 upstream으로 was (nest:3000)를 지정했다.

docker exec -it 5d95a840b0ba /bin/bash 로 nginx 컨테이너 안으로 들어가보자. nginx -t 로 nginx 설정에 아무 이상이 없는 걸 확인했다.

root@5d95a840b0ba:/# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

하지만 curl http://was:3000 을 실행했더니 was 호스트를 찾지 못하는 문제가 발생했다.

root@5d95a840b0ba:/# curl <http://was:3000>
curl: (6) Could not resolve host: was

nginx 설정파일에서 upstream을 삭제하고 프록시 서버로 http://nest:3000으로 수정했다.