web-dev-qa-db-fra.com

Comment puis-je utiliser PM2 avec Angular-Cli? - angulaire2

Comment puis-je exécuter: ng serve --prod avec pm2? 

ng servir d'angular-cli, Angular2. Je cours sur DigitalOcean. 

J'ai essayé de tester avec http-server -p 4200 -d false dans le répertoire dist/folder après ng build --prod 

Lorsque je demande au domaine https://www.unibookkh.com/ , j'ai l'erreur 404: (J'ai déjà configuré nginx pour écouter le port 4200.

 enter image description here

Je teste avec http-server parce que je pense que je peux peut-être exécuter pm2 avec cette commande pm2 start my_app_process.json où 

my_app_process.json  

{
    "apps": [
        {
            "name": "angular",
            "cwd": "~/angular2",
            "args": "-p 4200 -d false",
            "script": "/usr/bin/http-server"
        }
    ]
}

De meilleures idées sur la façon de le faire fonctionner avec PM2? 

6
Vicheanak

Cette commande fonctionnerait comme prévu:

après je cours 

ng build --prod

puis exécutez la commande suivante dans le dossier dist /

pm2 start /usr/bin/http-server -- -p 8080 -d false

Mettre à jour

J'ai trouvé une meilleure solution: which ng Alors cela affichera /usr/bin/ng

pm2 start /usr/bin/ng -- serve --prod

15
Vicheanak

Toutefois, si vous avez besoin de servir pour dev dans un environnement de préprod, vous pouvez créer un fichier start.sh à la racine de votre projet.

#!/bin/bash
ng serve --Host xxx.xxx.xxx.xxx --port xxxx

Et utilisez pm2 comme ça:

pm2 start start.sh --name my-pretty-dev-app-run-on-preprod

;)

11
Julien Moulin

Avec PM2 version récente

pm2 ecosystem

que mettre à jour

écosystèmes.config.js comme suit

module.exports = {
  apps : [{
    name: 'demoapp',
    script: 'node_modules/@angular/cli/bin/ng',
    args: 'serve --Host [yourip] --disable-Host-check',
    instances: 1,
    autorestart: true,
    watch: false,
    max_memory_restart: '1G',
    env: {
      NODE_ENV: 'development'
    },
    env_production: {
      NODE_ENV: 'production'
    }
  }],

  deploy : {
  }
};

enfin 

pm2 start & pm2 save

0
Bheru Lal Lohar

ng est un module de noeud après tout.

apps:
- name: ngserve
  script: 'node_modules/@angular/cli/bin/ng'
  args: 'serve --progress=false --live-reload=false --disable-Host-check=true'
  watch: false
  log_date_format: YYYY-MM-DD HH:mm
  merge_logs: true
  out_file: "/dev/null"
  error_file: "/dev/null"
0
Hexadecy