Как запустить сервер node.js на службе Azure Веб-приложение? - PullRequest
0 голосов
/ 01 мая 2020

У меня есть загрузочное приложение create-my-реагировать, которое, по сути, является веб-сайтом, использующим некоторые вызовы FETCH API для внешнего API, и оно развернуто и работает нормально.

Однако я добавил свой собственный Nodejs backend, путем создания сервера и использования express для маршрутов / промежуточного программного обеспечения. Все отлично работает локально. Я могу поразить свои внутренние конечные точки API (localhost: 3000 / myapiurlhere), и он выполняет действие с базой данных.

Мне нужно запустить npm start, чтобы запустить приложение create-my-реагировать на локально, а затем вручную запустите сервер узла с помощью node src/server.js, после чего мой внутренний API-интерфейс будет работать.

Служба Azure Web App, по сути, является предварительно сконфигурированным сервером с узлом RUNTIME на нем, и, похоже, он дает вам доступ только к D: \ home \ site \ wwwroot папка (Windows сервер).

Нужно ли мне найти способ запустить команду node server.js на сервере, чтобы запустить бэкэнд моего узла, или это должно быть работает автоматически? Кроме того, я использую create-my-реакции-app и npm run build, поэтому он создает папку build с вложенной папкой static.

Я запустил REST API на Java на моих Linux серверах Ubuntu и раньше, но никогда в таких службах приложений, как Azure. Как мне добиться того, что я пытаюсь сделать?

Вот мой server.js файл:

const http = require('http');
const app = require('./app');

const port = process.env.PORT || 3001;

const server = http.createServer(app);

server.listen(port);

1 Ответ

1 голос
/ 01 мая 2020

Вам не нужно делать ничего особенного. Следовали ли вы this page о том, как развернуть базовое c nodejs приложение в Azure AppService?

Еще одна вещь, которую вам нужно сделать, это передать версию Node в настройках приложения службы приложений.

WEBSITE_NODE_DEFAULT_VERSION для клавиши настройки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...