0

I have a project for a simple web app with a back-end API written in NodeJS that I worked on using the AWS Cloud9 IDE. I would like to deploy this to the public web so I can include it in my portfolio. However, I can't seem to find an option to deploy and the documentation hasn't been helpful in that regard.

The closest thing I've found has been an option to share my environment on the internet, but this involves a lot of setup and the end result is a URL that is essentially just an IP address.

What I am looking for is something hosted on AWS servers (I don't need a custom domain for this). I'm not sure what AWS' out-of-the-box URL would look like (projectname.aws.com?) but I am hoping for something similar to what heroku domains look like.

ipenguin67
  • 1,483
  • 5
  • 22
  • 39

1 Answers1

0

It is true that a Cloud9 instance is just an Amazon Linux instance running on EC2 with some additional stuff, so you could deploy your app directly off that - that would be unusual, but you refer to this as a 'project' so maybe that would is fine for your purposes. So it already satisfies your desire to be hosted on AWS servers.

The important thing (and something that's nice about this new Cloud9) is that since it is just a regular Amazon Linux on an EC2 instance you could just refer to the existing documentation for those to figure out how you need to configure things.

Your Cloud9 EC2 instance has a public domain and IP. They tend to be kinda' ugly - they aren't meant for consumers - but again it sounds like that might be OK for you. They change whenever restarted so if that's a problem you'll want to get (and pay for) an elastic IP. You'll need to look at the instance security rules and open up the HTTP ports.

But that should be about it: you'll have your app hosted on AWS servers, publicly accessible via a DNS name.

Tom
  • 17,103
  • 8
  • 67
  • 75
  • 1
    Can you clarify what you mean by "you could deploy your app directly off of that" (which is what I've been trying to do but can't find) and why it would be uncommon to do so? Isn't the purpose of using a development environment to eventually deploy it somewhere? – ipenguin67 Jul 28 '18 at 16:49
  • Typically people would use Cloud9 instance during dev and then deploy to a different instance for production. How you do that is a huge topic, eg. ideally you would push to a Git provider who would do your build/test/deploy, but in your case - which sounds fairly causual - you could run the app right in the C9 instance, same as when you were testing it but accessible to public. – Tom Jul 28 '18 at 18:59