Hi, I am trying to port some of my Rails and Node.js projects from my computer / Github. So essentially setting up instances and running the respective webservers on these EC2 instances.
Look at "Application Framework Examples" and the templates for "A simple Ruby on Rails "Hello World" application" to start. You can build your whole stack with a single click.
Later on, if you decide you want to be devops instead of dev, you can learn about how these templates were written. Go here to roll your own:
Not to discourage you from playing with EC2--it's awesome and useful--but if you just want to spin up Rails or Node.js apps quickly, it may be easiest and most convenient to use Heroku[1]. They run on EC2 and manage load balancing, web-server setup, (some) databases for you. All you do is push from your git repo to their endpoint, and they take care of the staging and deploy for you.
EC2 itself just provides blank virtual machines and gives you full control over them. At a high-level, you'll be setting up your web server and db, pulling your application code, and running it. It's really not too dissimilar from setting up your app on your local machine.
The complexity around EC2 comes from the need to scale an application. Then you'll want to add load-balancers and more instances. While you can add these by the GUI console, you'll want to learn to use the EC2 Command Line tools[2] or the API via a library like Boto[3]. You may want to look through Amazon's suggested architectures to understand how to put these tools into play[4].
Yes, heroku will be a good option as you don't have to worry about web server, db and other setup. If you are a one man team bootstrapping your startup or project, heroku will save you a lot of time. On top of that, you can start free and later on worry about paying and scaling. I recommend to use beanstalk for git private repository instead of github that only provides free public one.
Perhaps you desire the additional control and complexity that managing your own instances offers. If that is not the case, maybe try something like Heroku.