Webpack 无服务器框架&;next.js lambda函数超出解包大小限制
我试图找出如何减少ssr应用程序(next.js&serverless framework)的包大小,使其低于250MB AWS限制:Webpack 无服务器框架&;next.js lambda函数超出解包大小限制,webpack,aws-lambda,next.js,server-side-rendering,serverless-framework,Webpack,Aws Lambda,Next.js,Server Side Rendering,Serverless Framework,我试图找出如何减少ssr应用程序(next.js&serverless framework)的包大小,使其低于250MB AWS限制:发生错误:ServerLambdaFunction-解压缩大小必须小于262144000字节(服务:AWSLambdaInternal;状态代码:400;通过运行next build和&sls deploy来部署应用程序 未打包的归档文件是600MB+,是AWS允许lambda的250MB的两倍多。下面是节点_模块中最大的依赖项列表。我可以看到,通过将几个依赖项移
发生错误:ServerLambdaFunction-解压缩大小必须小于262144000字节(服务:AWSLambdaInternal;状态代码:400;
通过运行next build和&sls deploy来部署应用程序
未打包的归档文件是600MB+,是AWS允许lambda的250MB的两倍多。下面是节点_模块中最大的依赖项列表。我可以看到,通过将几个依赖项移动到开发人员依赖项,我可以稍微减少它,但这并不能解决问题 如果有人能给我指出正确的方向,我将不胜感激 这是我的package.json:我的serverless.yml是:{ "name": "ssr-ui", "version": "1.0.0", "description": "", "scripts": { "test": "echo \"Error: no test specified\" && exit 1", "build": "next build", "deploy": "next build && sls deploy", "start": "next start", "dev": "next dev" }, "keywords": [], "author": "", "license": "ISC", "dependencies": { "@aws-amplify/api": "^3.2.4", "@aws-amplify/auth": "^3.4.4", "@aws-amplify/core": "^3.5.4", "@aws-amplify/storage": "^3.3.4", "@aws-amplify/ui-react": "^0.2.21", "antd": "^4.6.4", "antd-img-crop": "^3.10.0", "axios": "^0.20.0", "country-state-picker": "^1.1.1", "echarts": "^4.9.0", "echarts-for-react": "^2.0.16", "express": "^4.17.1", "next": "^9.5.3", "next-react-svg": "^1.1.2", "path-match": "^1.2.4", "query-string": "^6.13.2", "react": "^16.13.1", "react-dom": "^16.13.1", "react-router-dom": "^5.2.0", "react-share": "^4.2.1", "sass": "^1.26.11", "serverless-apigw-binary": "^0.4.4", "serverless-domain-manager": "^4.2.0", "serverless-http": "^2.5.0", "url": "^0.11.0" }, "devDependencies": { "@types/jest": "^26.0.14", "@types/node": "^14.10.3", "@types/react": "^16.9.49", "@types/react-dom": "^16.9.8", "@types/react-router-dom": "^5.1.5", "typescript": "^4.0.2" } }
service: ssr-react-next provider: name: aws runtime: nodejs12.x region: ap-southeast-2 stage: ${self:custom.secrets.NODE_ENV} environment: NODE_ENV: ${self:custom.secrets.NODE_ENV} functions: server: handler: index.server events: - http: ANY / - http: ANY /{proxy+} plugins: - serverless-apigw-binary - serverless-domain-manager custom: secrets: ${file(secrets.json)} apigwBinary: types: - '*/*' customDomain: domainName: ${self:custom.secrets.DOMAIN} basePath: '' stage: ${self:custom.secrets.NODE_ENV} createRoute53Record: true
谢谢!aws lambda限制为250MB,但您可以尝试在serverless.yml中使用,它应该可以解决您的问题useServerleStrateTarget:true