我正在尝试在google cloud app engine (标准环境)上部署strapi,但是我一直收到一个500服务器错误。我用谷歌搜索了一遍,但还没有关于如何在AE上成功部署strapi的指南。
我尝试了这个帖子上的建议:https://github.com/strapi/strapi/issues/2146,所以我有:
更新用于在app.yaml中安装dependencies
但它似乎对我不起作用。我一直收到以下错误:
我试着用谷歌搜索那个错误“应用/无效”,但是我似乎找不到任何关于它的东西。
我也给了flex env一个旋转,但也失败了(没有正确的错误)。
这是我的app.yaml文件:
runtime: nodejs10
instance_class: F2
service: admin
entrypoint: node_modules/strapi/bin/strapi.js
env_variables:
DATABASE_HOST: "host"
DATABASE_PORT: 27017
DATABASE_NAME: "db"
DATABASE_USERNAME: "name"
DATABASE_PASSWORD: "pw"
DATABASE_SRV: true
DATABASE_AUTHENTICATION_DATABASE: "admin"
DATABASE_SSL: true
NODE_ENV: "production"
PORT: 1337
这是我的package.json (重要部分):
...
"scripts": {
"strapi": "node_modules/strapi/bin/strapi.js",
"gcp-build": "node node_modules/strapi/lib/utils/post-install.js && cd admin && npm run setup"
}
...
"engines": {
"node": ">=10.0.0",
"npm": ">=6.0.0"
},
生产database.json:
{
"defaultConnection": "default",
"connections": {
"default": {
"connector": "strapi-hook-mongoose",
"settings": {
"client": "mongo",
"host": "host",
"port": 27017,
"database": "db",
"username": "name",
"password": "pw",
"srv": true
},
"options": {
"authenticationDatabase": "admin",
"ssl": true
}
}
}
}
最后,这是我的server.json文件:
{
"host": "https://admin-dot-ootje-website.appspot.com",
"port": 1337,
"production": true,
"proxy": {
"enabled": false
},
"autoReload": {
"enabled": false
},
"cron": {
"enabled": false
},
"admin": {
"autoOpen": false
}
}
我希望从AE的入门指南中可以看到这一点,但我似乎遗漏了一些东西。有人知道这个错误是什么意思吗?有没有人已经在AE上部署了strapi?
如果我让它正常工作,我想把它添加到strapi文档或medium帖子中,让其他人发现它比我更容易:)
提前感谢!
发布于 2019-04-19 06:38:34
我认为你的问题是由server.json文件提供的。
此配置在我这边有效:
{
"host": "localhost",
"port": "${process.env.PORT || 1337}",
"production": true,
"proxy": {
"enabled": false
},
"autoReload": {
"enabled": false
},
"cron": {
"enabled": false
},
"admin": {
"autoOpen": false
}
}
我正在编写一个新的配置文件,以便让身份验证提供程序正常工作……以及其他一些功能。但是这个第一个版本对我来说是有效的。
如果你需要,我会随时更新我的搜索结果。
##更新1 ##
我发现在生产模式下GCP的配置很好。如果其他人需要,我会分享它:
{
"host": "localhost",
"port": "${process.env.PORT || 1337}",
"production": true,
"proxy": {
"enabled": true,
"ssl": true,
"host": "[project-name].appspot.com",
"port": 443
},
"autoReload": {
"enabled": false
},
"cron": {
"enabled": false
},
"admin": {
"autoOpen": false
}
}
我在GCP上使用flexible环境,但我认为这可以在标准模式下工作。
谢谢,
https://stackoverflow.com/questions/55685330
复制相似问题