Я пытаюсь развернуть приложение NEXTJS в Azure.Я создал веб-приложение с операционной системой Linux с установленным Node.Мой package.json
выглядит следующим образом.
{
"name": "frontend",
"version": "1.0.0",
"description": "This package contains all necessary depenencies for frontned",
"main": "index.js",
"scripts": {
"dev": "next",
"build": "next build",
"start": "next start -p $PORT",
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "masnad",
"license": "ISC",
"dependencies": {
"@zeit/next-css": "^1.0.1",
"next": "^8.0.3",
"react": "^16.8.3",
"react-dom": "^16.8.3"
}
}
Сначала я создал пустое веб-приложение, а затем использовал службу развертывания kudu, где я перенес свои коды с локального на лазурное.
Журнал Git при нажатии на Azure выглядит следующим образом
remote: ..............................................................
remote: npm WARN rollback Rolling back fsevents@1.2.7 failed (this is probably harmless): ENOTEMPTY: directory not empty, rmdir '/home/site/wwwroot/node_modules/fsevents/node_modules/abbrev'
remote: npm WARN rollback Rolling back rc@1.2.8 failed (this is probably harmless): ENOTEMPTY: directory not empty, rmdir '/home/site/wwwroot/node_modules/fsevents/node_modules/rc/node_modules/minimist'
remote:
remote: > ax-frontend@1.0.0 postinstall /home/site/wwwroot
remote: > next build
remote:
remote: ...............
remote: Creating an optimized production build ...
remote:
remote: ...
remote: Compiled successfully.
remote:
remote: ┌ /
remote: ├ /_app
remote: ├ /_document
remote: └ /_error
remote:
remote: npm WARN unistore@3.2.1 requires a peer of preact@* but none is installed. You must install peer dependencies yourself.
remote: audited 6645 packages in 139.904s
remote: found 0 vulnerabilities
remote: npm WARN ax-frontend@1.0.0 No repository field.
remote:
remote: npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.7 (node_modules/fsevents):
remote: npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.7: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
remote:
remote:
remote: > ax-frontend@1.0.0 build /home/site/wwwroot
remote: > next build
remote:
remote: .........
remote: Creating an optimized production build ...
remote:
remote: ...
remote: Compiled successfully.
remote:
remote: ┌ /
remote: ├ /_app
remote: ├ /_document
remote: └ /_error
remote:
remote:
remote: Done.
remote: Running post deployment command(s)...
remote: Deployment successful.
remote: App container will begin restart within 10 seconds.
To https://node-ax-dev.scm.azurewebsites.net:443/node-ax-dev.git
ec4d5ad..dcadc02 development -> master
Так что я предполагаю, что он был развернут хорошо.Я пошел на https://node-ax-dev-1212.azurewebsites.net
, но ничего не произошло.
Итак, я запустил SSH внутри экземпляра, а затем запустил npm run dev
, и он сразу показал мне, что проект работает на localhost: 3000.
ТАК я написал https://node -ax-dev-1212.azurewebsites.net: 3000 и все же он не работал, так как сообщает в терминале, что порт уже используется ивыключается.
Я не уверен, что не так, но мне кажется, что большую часть процедуры я сделал правильно.
Я не добавил никаких специфических переменных env, так что все просто новое.Мой каталог выглядит следующим образом.
PS Я также попытался добавить в настройки приложения runtime
команду запуска файла npm run dev
, но яне думаю, что это работает.