Gatsby CMS-无法从/.netlify/identity

时间:2018-09-19 16:15:40

标签: gatsby netlify netlify-cms

我已经在ubuntu 16.04盒子上安装了gastby 2

gatsby new netlifycms2 https://github.com/netlify-templates/gatsby-starter-netlify-cms 

没有错误。

但是,当我访问/ admin并单击使用netlify登录时,会收到消息

无法从/.netlify/identity

加载设置

我认为我需要此文件,但未找到有关如何安装该文件的任何说明。

我在 static / admin / .netlify / identity 中手动添加了一个空白身份文件,然后运行了gatsby build和gatsby服务,但错误消息仍然存在

我已经authentication and backends阅读了blog,这表明:

“一旦启用身份服务,GoTrue微服务的托管版本将使您可以在/.netlify/identity下为任何Netlify站点添加用户注册和管理。”

我注意到gotrue cms.js安装在admin目录中,还有其他一些

./public/admin/cms.js
./node_modules/netlify-cms/dist/cms.js
./node_modules/gatsby-plugin-netlify-cms/cms.js
./src/cms/cms.js

netlify身份插件是否存在未创建此文件的错误?

 System:
    OS: Linux 4.4 Ubuntu 16.04.5 LTS (Xenial Xerus)
    CPU: x64 Intel(R) Xeon(R) CPU E5-2650 v4 @ 2.20GHz
    Shell: 4.3.48 - /bin/bash
  Binaries:
    Node: 10.10.0 - /usr/bin/node
    Yarn: 1.9.4 - /usr/bin/yarn
    npm: 6.4.1 - /usr/bin/npm
  npmPackages:
    gatsby: ^2.0.0 => 2.0.1 
    gatsby-plugin-netlify: ^2.0.0 => 2.0.0 
    gatsby-plugin-netlify-cms: ^3.0.0 => 3.0.1 
    gatsby-plugin-react-helmet: ^3.0.0 => 3.0.0 
    gatsby-plugin-sass: ^2.0.1 => 2.0.1 
    gatsby-plugin-sharp: ^2.0.5 => 2.0.5 
    gatsby-remark-images: ^2.0.1 => 2.0.1 
    gatsby-source-filesystem: ^2.0.1 => 2.0.1 
    gatsby-transformer-remark: ^2.1.1 => 2.1.2 
    gatsby-transformer-sharp: ^2.1.1 => 2.1.1 
  npmGlobalPackages:
    gatsby-cli: 2.4.1

此外,我已经将https://github.com/netlify-templates/gatsby-starter-netlify-cms克隆到了gitlab中,但是遇到了同样的问题。

1 个答案:

答案 0 :(得分:5)

盖茨比starter使用git-gateway的{​​{1}}后端,并期望托管在Netlify上并启用Netlify Identity服务。 Gatsby Starter项目是一键式模板之一。

netlify-cms

Netlify使用用golang编写的GoTrue开源API,可以充当用于处理用户注册和身份验证的独立API服务。

GoTrue不属于NetlifyCMS应用程序捆绑包(netlify-cms.js或cms.js)。在Netlify站点上启用身份时,将在站点上为backend: name: git-gateway branch: master 创建一个API终结点  端点。添加没有GoTrue API的端点将无效。

Git-Gateway选项

在Netlify上托管Gatsby / NetlifyCMS网站,并通过/.netlify/identity上的站点管理员启用Netlify Identity service,然后继续使用app.netlify.com

使用GitLab的自助主机

自行托管您的网站并更改git-gateway以使用GitLab后端并使用implicit grant setup

使用您自己的OAuth

自行托管您的网站并更改config.yml以使用GitHub后端和use your own OAuth authentication