将 serverless 和 serverless-domain-manager 与自定义域一起使用时的证书问题
Posted
技术标签:
【中文标题】将 serverless 和 serverless-domain-manager 与自定义域一起使用时的证书问题【英文标题】:Certificate issue when using serverless and serverless-domain-manager with custom domain 【发布时间】:2020-04-24 10:25:04 【问题描述】:我正在尝试为我的 API Gateway 和 Lambda 函数设置 custom domain
。
我用route53
注册了一个域。例如:myDomainToTestApi.net
我还创建了以下证书:myDomainToTestApi.net、*.myDomainToTestApi.net、www.myDomainToTestApi.net
我为serverless framerwork
安装了插件serverless-domain-manager
在我的serverless.yml
中我添加了(在custom 下):
customDomain:
domainName: myDomainToTestApi.net
basePath: ''
stage: $opt:stage, 'dev'
certificateName: '*.myDomainToTestApi.net'
createRoute53Record: true
所有资源都在us-east-1
当我跑步时:
sls create-domain
我收到以下错误...
Serverless: Load command test
Serverless: Load command dashboard
Serverless: Invoke create_domain
Serverless: [AWS apigateway 404 0.374s 0 retries] getDomainName( domainName: 'myDomainToTestApi.net' )
Serverless Domain Manager: NotFoundException: Invalid domain name identifier specified
Serverless: [AWS acm 200 0.35s 0 retries] listCertificates( CertificateStatuses: [ 'PENDING_VALIDATION', 'ISSUED', 'INACTIVE', [length]: 3 ] )
Error --------------------------------------------------
Error: Error: Could not find the certificate *.myDomainToTestApi.net.
at ServerlessCustomDomain.<anonymous> (/Users/user/project/node_modules/serverless-domain-manager/dist/index.js:279:23)
如果我转到证书管理器视图,所有的状态都是 Issued
任何人都知道会发生什么...?谢谢。
【问题讨论】:
我遇到了同样的错误,你解决了吗? 【参考方案1】:尝试添加另一个名为certificateArn
的属性,您可以在域的证书管理器详细视图中找到certicateArn
certificateArn: 'xxxxx'
【讨论】:
我添加了arn
。仍然失败,但使用新的error
:无服务器:加载命令仪表板无服务器:调用 create_domain 无服务器:[AWS apigateway undefined 9.234s 0 retries] getDomainName( domainName: 'myDomainToTestApi.net' ) Serverless Domain Manager: CredentialsError: Missing credentials in config
错误 ----- --------------------------------------------- 错误:错误:无法要获取有关 myDomainToTestApi.net 的信息顺便说一句,我的 AWS 凭证在 /.aws/credentials
然后出现另一个神秘错误...UnexpectedParameter: Unexpected key 'securityPolicy' found in params
即使我自己没有指定(使用默认值)【参考方案2】:
其实是
sls create_domain
(注意下划线)
【讨论】:
@AnkurLoriya 对不起,伙计,但这是正确的命令...这里是文档:npmjs.com/package/serverless-domain-manager以上是关于将 serverless 和 serverless-domain-manager 与自定义域一起使用时的证书问题的主要内容,如果未能解决你的问题,请参考以下文章