我试图将我真正简单的ghost测试网站升级到最新版本的Ghost 0.4.2。我已按照其网站上的升级说明操作,并能够在本地运行该项目的升级版本。
当我尝试使用GIT Deploy流程将升级版本推送到我的azure实例时,我收到以下错误日志。任何人都可以了解出了什么问题。我最好的猜测是他们的sqlite新版本出了问题。
Command: "D:\home\site\deployments\tools\deploy.cmd"
Handling node.js deployment.
KuduSync.NET from: 'D:\home\site\repository' to: 'D:\home\site\wwwroot'
Copying file: 'iisnode.yml'
Copying file: 'package.json'
Node.js versions available on the platform are: 0.6.17, 0.6.20, 0.8.2, 0.8.19, 0.8.26, 0.10.5, 0.10.18, 0.10.21, 0.10.24, 0.10.26, 0.10.28.
Selected node.js version 0.10.28. Use package.json file to choose a different version.
Updating iisnode.yml at D:\home\site\wwwroot\iisnode.yml
npm http GET https://registry.npmjs.org/sqlite3
npm http 304 https://registry.npmjs.org/sqlite3
npm ERR! error rolling back Error: EPERM, unlink 'D:\home\site\wwwroot\node_modules\sqlite3\lib\binding\Release\node-v11-win32-ia32\node_sqlite3.node'
Failed exitCode=50, command="D:\Program Files (x86)\nodejs\0.10.28\node.exe" "D:\Program Files (x86)\npm\1.4.9\node_modules\npm\bin\npm-cli.js" install --production
npm ERR! error rolling back sqlite3@2.2.0 { [Error: EPERM, unlink 'D:\home\site\wwwroot\node_modules\sqlite3\lib\binding\Release\node-v11-win32-ia32\node_sqlite3.node']
An error has occurred during web site deployment.
npm ERR! error rolling back errno: 50,
npm ERR! error rolling back code: 'EPERM',
npm ERR! error rolling back path: 'D:\\home\\site\\wwwroot\\node_modules\\sqlite3\\lib\\binding\\Release\\node-v11-win32-ia32\\node_sqlite3.node' }
npm ERR! Error: EPERM, unlink 'D:\home\site\wwwroot\node_modules\sqlite3\lib\binding\Release\node-v11-win32-ia32\node_sqlite3.node'
npm ERR! { [Error: EPERM, unlink 'D:\home\site\wwwroot\node_modules\sqlite3\lib\binding\Release\node-v11-win32-ia32\node_sqlite3.node']
npm ERR! errno: 50,
npm ERR! code: 'EPERM',
npm ERR! path: 'D:\\home\\site\\wwwroot\\node_modules\\sqlite3\\lib\\binding\\Release\\node-v11-win32-ia32\\node_sqlite3.node' }
npm ERR!
npm ERR! Please try running this command again as root/Administrator.
npm ERR! System Windows_NT 6.2.9200
npm ERR! command "D:\\Program Files (x86)\\nodejs\\0.10.28\\node.exe" "D:\\Program Files (x86)\\npm\\1.4.9\\node_modules\\npm\\bin\\npm-cli.js" "install" "--production"
npm ERR! cwd D:\home\site\wwwroot
npm ERR! node -v v0.10.28
npm ERR! npm -v 1.4.9
npm ERR! path D:\home\site\wwwroot\node_modules\sqlite3\lib\binding\Release\node-v11-win32-ia32\node_sqlite3.node
npm ERR! code EPERM
npm ERR! errno 50
npm ERR! stack Error: EPERM, unlink 'D:\home\site\wwwroot\node_modules\sqlite3\lib\binding\Release\node-v11-win32-ia32\node_sqlite3.node'
答案 0 :(得分:2)
我认为这与被锁定的问题...\node_sqlite3.node
有关。当我遇到同样的错误时,我重新启动了Azure网站并重新部署,它第二次工作。
我知道,这不是一个根本原因的解决方案,但如果你被困住,它会帮助你。
答案 1 :(得分:0)
我遇到了同样的问题。我发现我的Git repo包含了node_modules文件夹,因此它与代码一起部署。这不是必需的 - Kudu将在部署时构建依赖项。
尝试从您的仓库中删除node_modules文件夹,并在.gitignore
中添加一个条目,以便它不会重新添加。您还希望对Ghost.db
以及在部署时无法替换的任何内容内容执行相同的操作。