diff --git a/Dockerfile b/Dockerfile index 77c9b09f0f37e2ed6d69e4679f9cd02c8bafa8ae..02775cb58b19ef07342a9d32cda92678f05e20bb 100644 --- a/Dockerfile +++ b/Dockerfile @@ -7,5 +7,5 @@ COPY . . RUN npm install # Run the app -EXPOSE 3000 +EXPOSE 4000 CMD [ "npm", "start" ] diff --git a/config.js b/config.js index 26129c10602a86c0dc28543b4763fd78974252ea..658bda8b174b27a52342ba1687194b3ddaacb944 100644 --- a/config.js +++ b/config.js @@ -20,12 +20,24 @@ ******************************************************************************/ module.exports = { - databaseName: 'VILLAS', - databaseURL: 'mongodb://localhost:27017/', - port: 4000, - secret: 'longsecretislong', - admin: { - username: 'admin', - password: 'admin' + development: { + databaseName: 'VILLAS', + databaseURL: 'mongodb://localhost:27017/', + port: 4000, + secret: 'longsecretislong', + admin: { + username: 'admin', + password: 'admin' + } + }, + production: { + databaseName: 'VILLAS', + databaseURL: 'mongodb://database:27017/', + port: 4000, + secret: 'longsecretislong', + admin: { + username: 'admin', + password: 'admin' + } } -} +}; diff --git a/docker-compose.yml b/docker-compose.yml index c7d32b8ea0189bbcaa1cdc1d992aa792e700a779..6665600b172c62ff78c94e990597c3dde8e7aa21 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,13 +1,14 @@ -node: - image: villasweb-backend - ports: - - "3000:3000" - links: - - mongo - environment: - - NODE_ENV=development +version: "2" -mongo: - image: mongo - ports: - - "27017:27017" +services: + backend: + image: villasweb-backend + ports: + - "4000:4000" + links: + - database + environment: + - NODE_ENV=production + + database: + image: mongo:latest diff --git a/server.js b/server.js index 6a7f837949e430e042b09814de2f5c1d37630ea7..9a94c9e5d15a85c121205ef00017359475d5fcb4 100644 --- a/server.js +++ b/server.js @@ -27,8 +27,6 @@ var morgan = require('morgan'); var cors = require('cors'); // local include -var config = require('./config'); - var users = require('./routes/users'); var projects = require('./routes/projects'); var visualizations = require('./routes/visualizations'); @@ -44,6 +42,9 @@ var User = require('./models/user'); // create application var app = express(); +// load configuration +var config = require('./config')[app.get('env')]; + // configure app app.use(bodyParser.json()); app.use(bodyParser.urlencoded({ extended: true })); @@ -74,6 +75,8 @@ app.use(function(req, res, next) { }); // development error handler +console.log("Environment: " + app.get('env')); + if (app.get('env') === 'development') { app.use(function(err, req, res, next) { res.status(err.status || 500);