It is taken for granted that you have both Docker and Docker Compose.
docker-compose up
or
docker-compose run --service-ports web npm start
Other execution options.
Requirements:
npm install
Start MongoDB & Redis: (skip this step if you have them running already)
scripts/startdb.sh
Run the project (see Execution for alternative options):
npm start
Default (production):
npm start
Production (backend only):
npm run start-prod-backend
Production (frontend only):
npm run start-prod-frontend
Development:
npm run start-dev
Development (backend only):
npm run start-dev-backend
Production (frontend only):
npm run start-dev-frontend
When using Docker, npm commands can be passed by overriding the default web command:
docker-compose run --service-ports web npm start
Production Docker Compose gathers the latest
version from the Docker Hub.
docker-compose -f docker-compose.yml -f docker-compose.prod.yml up
The default configuration file resides in config/default.js
.
You can create your own configuration files that extend it that suit your own needs
(configuration files are based on config).
To start, you should be creating a config/production.js
or config/development.js
, for
development or production respectively, that looks like the following:
module.exports = {
passport: {
github: {
clientID: 'Github client ID',
clientSecret: 'GitHub secret key',
callbackURL: 'http://mydomain:3000/api/auth/github/callback',
},
google: {
clientID: 'Google client ID',
clientSecret: 'Google secret key',
callbackURL: 'http://mydomain:3000/api/auth/google/callback',
},
},
}
.
├── backend
├── config
├── data
| ├── db-data
| └── db-session
├── docs
├── frontend
├── public
├── scripts
├── webpack
├── .babelrc
├── .editorconfig
├── .eslintrc
├── .gitignore
├── .package.json
├── .travis.yml
└── README.md