Search code examples
amazon-web-servicesamazon-ec2subdomainjupyter-notebooknamecheap

How to link an Amazon EC2 instance of a jupyter notebook to a Namecheap subdomain?


I need some help linking a newly created Amazon EC2 instance to a Namecheap subdomain. For the purposes of this question, we'll say my website is called example.com. Currently, example.com is linked to a Github Page (I've added two A records and a CNAME record per these instructions). I now want to create a subdomain called notebook.example.com, which should point to my EC2 instance that is exposing a Jupyter Notebook (which I created per these instructions). So far, I've:

  • Created an Elastic IP Address and assigned it to the EC2 instance (let's say it is 55.101.38.114).
  • In Route 53, I created a Hosted Zone (none existed) and created a Record Set with name="notebook" of type A and the value=55.101.38.114.

This is where I'm stuck. On Namecheap, I created a URL Redirect Record with Host=notebook and value=https://55.101.38.114:8888/ with masking, but when I type https://notebook.example.com, it hangs up on "Connecting ..." and ultimately says "This site cannot be reached." Where did I go wrong?

EDIT:

I've almost answered by own question by connecting to http://notebook.example.com instead of https://notebook.example.com. Also, I am able to connect if I turn off masking. Is there any way I can still connect with masking? I'd like to see the jupyter notebook at notebook.example.com rather than it redirecting to https://55.101.38.114:8888/.

EDIT #2:

Route53 setup

Route53

Namecheap setup (I removed the URL Redirect)

Namecheap


Solution

  • The solution was to add NS records for the nameservers from Route 53 in Namecheap. I also added an A record in Namecheap with the EC2 instance's elastic IP. I still have to specify the port to connect (notebook.example.com:8888).

    This is what Namecheap should look like:

    namecheap final

    Thanks to @JohnRotenstein.