GCP에서 포트 80, 443 사용 시 설치 실패

안녕하세요,

GCP Compute Engine를 사용하여 VM을 생성했습니다. 제 도메인 이름은 solarnauts.net입니다 (Namecheap에서 등록).
DNS A 레코드를 생성했으며, 호스트에는 서브도메인 discourse.solarnauts.net을, 값에는 VM의 외부 IP 주소를 입력했습니다.

./discourse-setup을 실행하면 포트 80과 443에 대한 경고가 표시됩니다(아래 참조).
VM의 방화벽 규칙에 이 두 포트를 개방하는 규칙을 추가했음에도 불구하고 여전히 이 오류가 발생합니다. 어떤 조치를 권장하시나요?

감사합니다

Checking your domain name . . .WARNING: Port 443 of computer does not appear to be accessible using hostname: discourse.solarnauts.net.WARNING: Connection to [http://discourse.solarnauts.net](http://discourse.solarnauts.net/) (port 80) also fails.This suggests that discourse.solarnauts.net resolves to some IP address that does not reach this machine where you are installing discourse.The first thing to do is confirm that discourse.solarnauts.net resolves to the IP address of this server.You usually do this at the same place you purchased the domain.If you are sure that the IP address resolves correctly, it could be a firewall issue.A web search for "open ports YOUR CLOUD SERVICE" might help.

GCP에서 netstat -alpn | grep 80 명령을 실행해 보포트 80에서 웹 서버가 이미 실행 중인지 확인해 보세요.

DNS 레코드 전파에 약간의 지연이 있을 수 있나요?

80번 포트와 443번 포트를 열었나요?

이 과정은 보통 얼마나 걸리나요? 도메인은 2일 전에 구매했고, A 레코드는 어제 추가했습니다. 전파가 완료되었는지 확인할 방법이 있을까요?

예를 들어 이렇게 시도해 보았습니다:

$ nslookup solarnauts.net
Server:         8.8.8.8
Address:        8.8.8.8#53

Non-authoritative answer:
Name:   solarnauts.net
Address: 192.64.119.14

$ nslookup discourse.solarnauts.net
Server:         8.8.8.8
Address:        8.8.8.8#53

** server can't find discourse.solarnauts.net: NXDOMAIN

어떤 이유로 인해 DNS 레코드가 제대로 생성되지 않았을 수 있습니다. 현재 도메인 solarnauts.net에는 Namecheap 주차용 DNS 레코드만 보이고 다른 내용은 보이지 않습니다.

GCP 엔진에서 두 포트를 모두 개방하는 방화벽 규칙을 생성했지만, 컨테이너 최적화 OS와 Docker 자체에 관련된 더 구체적인 사항이 있을 수 있다는 내용을 읽었습니다.

https://stackoverflow.com/questions/44620723/cant-connect-to-port-80-on-google-cloud-compute-instance-despite-firewall-rule

이걸 어떻게 확인했어요?

다음과 같은 몇 가지 온라인 도구를 통해:
whatsmydns.net
dnschecker.org

nslookup을 사용해 보았어요(이전에 @Benjamin_D에게 보낸 답변을 참고해 주세요). 같은 확인을 수행하는 건가요?

nslookup은 사용자의 시스템에서 로컬로 수행되는 검사입니다. 시스템과 라우터의 DNS 캐시, ISP의 DNS 리졸버 등 다양한 요인에 의해 영향을 받을 수 있습니다. 그래서 저는 여러 PoP(접속 지점)를 통해 DNS 레코드가 존재하는지, 어떤 값을 반환하는지 확인하는 제3자 서비스를 이용했습니다.

네, 그러면 현재 문제는 방화벽과 관련이 없고, A 레코드를 생성한 Namecheap 쪽을 확인해 봐야 한다는 뜻이네요. 조금 더 기다리는 문제일까요? 레코드를 생성한 지 24시간도 되지 않았거든요. 보통 이렇게 오래 기다려야 하는 건가요?

신규로 생성된 DNS 레코드는 일반적으로 약 10분 후에 해석(resolving)이 시작됩니다. 느린 해석기를 사용하는 경우 2~6시간이 걸릴 수 있으며, 최악의 경우 최대 48시간까지 소요될 수 있습니다. 저는 Namecheap에 대한 이전 경험이 없어서 그쪽에 대해 단정적으로 말씀드리기는 어렵지만, 대부분의 등록국(registrar)의 DNS 전파(propagation)는 비교적 빠르게 해석이 시작됩니다.

귀하의 설정에서 이상하게 의심스러운 점은 어디에도 DNS 레코드 변경 사항이 보이지 않는다는 것입니다. 따라서 레코드가 올바르게 생성되지 않았을 가능성이 있습니다.

@itsbhanusharma 정말 잘 짚어주셨네요.

Namecheap에서 “호스트” 필드에 'discourse’만 입력해야 하는데, 실수로 전체 주소 'discourse.solarnauts.net’를 입력했었습니다.

그래서 DNS 확인 도구를 'discourse.solarnauts.net.solarnauts.net’로 테스트해 봤더니, 이 도메인은 완전히 전파(propagation)되어 있더군요.

결국 호스트 필드를 'discourse’로만 수정하면 되는 건가요?..

네, 그걸로 해결될 거예요.