Как развернуть проект yeoman angular-fullstack?
Я хочу развернуть простой угловой проект, выполненный с угловым полным стеком.
https://github.com/DaftMonk/generator-angular-fullstack
Я старался:
yo angular-fullstack test
grunt build
Затем в dist я получил 2 папки: серверную и публичную.
как развернуть их на сервере Linux?
с навсегда / узел и nginx??? Я хочу самостоятельно принять мой проект.
Спасибо
4 ответа
1.) Установите nginx
2.) Прокси-сервер перенаправляет nginx на порт вашего узла. См. Цифровые Океаны How-To.
nginx.conf
server {
listen 80;
server_name localhost;
location / {
proxy_pass http://localhost:9000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
3.) Запустите app.js с узлом в папке dist с правильными переменными:
$ export NODE_ENV=production; export PORT=9000; node dist/server/app.js
4.) Найдите имя хоста, настроенное в nginx на шаге 2.
Если у вас много 404-х, вы, скорее всего, используете angular.js в режиме HTML5 и вам необходимо повторно подключить ваши маршруты для обслуживания статического содержимого angular.js. Я описал это и как решить многие другие ошибки, с которыми вы можете столкнуться в моей статье в блоге: " Непрерывная интеграция с Angular Fullstack".
Вы также можете попробовать pm2, который прост и легок, имеет множество полезных функций.
https://github.com/Unitech/pm2
// Start new node process
$ pm2 start dist/server/app.js
// list all process
$ pm2 list
Кроме того, если вы работаете с dong монго с хостом, вам нужно изменить /server/config/environment/production.js uri, чтобы он соответствовал development.js, и это должно работать.
С MongoLab у вас есть что-то на этот счет: mongodb://user:pass@XXXXX.mongolab.com:XXXXX/yourdatabase
затем запустите команду grunt serve: dist в каталоге вашего приложения.
Это сработало для меня.
Устанавливать generator-angular-fullstack:
npm install -g generator-angular-fullstack
Создайте новый каталог и cd
внутрь:
mkdir my-new-project && cd $_
Бежать yo angular-fullstack
, необязательно передавая имя приложения:
yo angular-fullstack [app-name]
Бежать grunt
для строительства, хрюкатьserve for preview, and
grunt serve:dist` для предварительного просмотра встроенного приложения