as will be obvious, I do not know much about networking and do appreciate all hints and explanations. I wrote a little website application in flask using gunicorn and nginx. It is containerised, and works locally. My goal is to deploy it on gcloud and have a proper domain name pointing at it.
I set up a small compute instance. I used the standard http and https firewalls on that instance. I have an external IP EXT_IP reserved and set up. Additionally, I set up allow-firewalls for 443 ingress and egress on that instance. I run the docker container while mapping the ports 80 and 443 to the container port. I am not sure whether it is necessary to map the 443 to the container port. When I run http://[EXT_IP] the application works just as expected. When I however just click on the external IP or use an https request, I do get a "Secure Connection Failed" error.
When I run nmap EXT_IP
I get the following output, which looks sensible.
Host is up (0.039s latency).
Not shown: 994 filtered ports
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
443/tcp open https
3389/tcp closed ms-wbt-server
8000/tcp closed http-alt
8001/tcp closed vcom-tunnel
Nmap done: 1 IP address (1 host up) scanned in 10.64 seconds
Additionally I tried to set up Cloud DNS. I purchased a domain on Google domains and set up an A record for the domain to the reserved external IP and a CNAME alias for the www.domain to the domain.
When I attempt to go to the site using the domain, I get a not found error.
When I use host domain_name
I get
Host [Domain Name] not found: 3(NXDOMAIN)
I suspect that two things are going wrong. The https and the DNS mapping seem to be separate issues, but I am not sure.
Could anyone help me how to resolve either or both of those? Thank you very much in advance.