Express Express on AWS

less than 1 minute read

FUN FACT! Apparently, I’ve done this before!

Using this guide straight from AWS.

$ mkdir node-express
$ cd node-express
$ git init
$ vi .gitignore

copy pasta

node_modules/
.gitignore
.elasticbeanstalk/

YES WE ARE WEST 2 – do not google this again, Aaron.

$ eb init --platform node.js --region us-west-2
$ eb create --sample node-express-env-NEW-NAME-DUH
$ eb open node-express-env-NEW-NAME-DUH
$ mkdir .ebextensions
$ cd .ebextensions/
$ vi nodecommand.config

copy pasta

option_settings:
  aws:elasticbeanstalk:container:nodejs:
    NodeCommand: "npm start"
$ cd ..
$ git add .
$ git commit -m "Definitely not my first express app"
$ eb deploy node-express-env-NEW-NAME-DUH
$ cd .ebextensions/
$ vi staticfiles.config

copy pasta

option_settings:
  aws:elasticbeanstalk:container:nodejs:staticfiles:
    /public: /public
exports.index = function(req, res) {
 res.render('cat', {title: 'My Cat Log'});
};

exports.add_cat = function(req, res) {
};
$ cd ..
$ vi app.js

copy pasta

var express = require('express');
var path = require('path');
*var cat = require('./routes/cat');*

copy pasta

var app = express();
*app.get('/cats', cat.index);*
*app.post('/add_cat', cat.add_cat);*
$ git add .ebextensions/ app.js
$ git commit -m "Serve stylesheets statically with nginx."
$ cp views/index.jade views/cat.jade
$ git add .
$ git commit -m "Add cats route and template"
$ eb deploy node-express-env-NEW-NAME-DUH

Updated: