GithubHelp home page GithubHelp logo

meanbase-nginx-loadbalance's Introduction

Estrutura básica para criar um sistema com MEAN modular, login já incluído.


Requer devidamente instalado

  • Nginx
    • sudo apt-get install nginx
  • MongoDB
  • NodeJS

sudo npm install -g nginx-manager
sudo nginx-manager -d /var/www/projetos/meanbase-nginx-loadbalance/frontend/ -u meanbasenginx.dev -n meanbasenginx -p 20
  • Observe que para porta colocamos apenas a inicial, se sua porta é 2020 você deve colocar apenas o 20, o nginx-manager vai gerar as portas na sequência, ex: 2020 2021 2022 2023

  • Na pasta frontend

bower install
npm install

Se for na PRODUÇÃO rode na pasta frontend e não esqueça de criar a config do host apontando pra pasta dist dentro de frontend

grunt
  • Na pasta frontend duplique o arquivo config.js.dist para config.js e edite conforme configurou sua url do projeto
  • ela ja pega a url default que você deixou rodando na config do vhost
(function () {
    'use strict';

    angular.module('app')
        .constant('myConfig', {
            api: window.location.origin + '/api',
        });

    angular.module('core')
        .constant('coreConfig', {
            cache: true,
        });
})();

se tudo foi configurado certo acesse: meanbasenginx.dev e você verá uma tela de login parecida com essa:

tela de login

Ok agora vamos configurar o backend 🚀

  • na pasta backend
npm install
  • novamente duplique o arquivo config.js.dist para config.js
module.exports = {
    secret: 'token_aleatorio_para_o_jwt',
    database: 'mongodb://127.0.0.1:27017/meanbase',
    uploadPath: '/var/www/projetos/meanbase-nginx-loadbalance/frontend/uploads/',
    initialPort: 2020,
 	passFixture: 'senha_para_fixture',
};

atenção na initialPort tem que ser a mesma usada na hora de criar a config do nginx

  • dentro da pasta backend, iniciamos nosso servidor, so use o --node-args caso seu sistema esteja fazendo uso muito intenso de memória RAM
pm2 start start.js --name="meanbase" --watch
  • o watch serve para que ele reinicie o server automaticamente a cada save, você pode usar o nodemon se desejar, basta rodar na pasta backend nodemon

se tudo foi configurado corretamente irá aparecer algo como, depende da quantidade de processadores da máquina

Server start: 2020
Server start: 2021
Server start: 2022
Server start: 2023

Agora vamos criar o usuário admin para logar no sistema

  • pelo navegador acesse: meanbasenginx.dev/api/fixture/usuario/senha_para_fixture

senha_para_fixture é configurada no arquivo de config.js do backend


✈️ Pronto agora você pode acessar a url do projeto e logar com o usuário: admin e a senha: admin ✈️

  • Qualquer dúvida me escreve um email, vou ajudar com todo prazer.

[email protected]

License

MIT License © Rubens Fernandes

meanbase-nginx-loadbalance's People

Contributors

rubenswebdev avatar

Stargazers

 avatar

Watchers

 avatar  avatar

Forkers

ashitaweb

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.