Я пытаюсь запустить простейшие приложения node.js в службе приложений Azure (Linux), но у меня нет идей, как это запустить.Я пробовал разные подходы, и, похоже, ничего не работает.
Я просто развертываю приложение через FTP и помещаю файлы в «wwwroot», но при запросе URL оно загружается навсегда, а затем заканчиваетсяответ службы недоступен.
При создании приложения я выбираю Linux в качестве платформы, запускаю node.js 8.11 и развертываю через «код», а не через докер.
В журналах я вижу это:
docker run -d -p 46852:8080 --name [appname] -e WEBSITE_NODE_DEFAULT_VERSION=8.11 -e APPSETTING_WEBSITE_NODE_DEFAULT_VERSION=8.11 -e WEBSITE_SITE_NAME=[appname] -e WEBSITE_AUTH_ENABLED=False -e WEBSITE_ROLE_INSTANCE_ID=0 -e WEBSITE_INSTANCE_ID=[id] -e HTTP_LOGGING_ENABLED=1 appsvc/node:8.11.2_1805212105
Container [appname] for site [appname] did not start within expected time limit. Elapsed time = 230.4882261 sec
Что это значит, используется ли докер как-то, даже если я настроил приложение с развертыванием через «Код» и FTP.
package.json
{
"name": "foo",
"version": "1.0.0",
"description": "x",
"author": "x",
"private": true,
"scripts": {
"start": "node server.js"
},
"dependencies": {
"express": "^4.16.3"
}
}
server.js
const express = require('express')
const app = express()
const port = process.env.PORT || 3000
const host = process.env.HOST || '127.0.0.1'
app.get('/', (req, res) => res.send('Hello!'))
app.listen(port, host)
Я также пробовал ssh в приложение и запускаю npm install
.Я попытался запустить приложение через консоль ssh node server.js
, но в результате появляется сообщение «Порт уже используется».Я попытался установить порт 8080 в «настройках приложения» на портале Azure.
Что мне здесь не хватает?Как мне запустить приложение?