
ewally/serverless-ci本镜像是专为Node.js无服务器(Serverless)项目设计的测试与部署工具集合,基于Node.js环境构建,集成了项目测试、验证及部署所需的核心工具链。旨在简化无服务器项目的开发流程,提供一致的测试环境和便捷的部署能力,适用于开发阶段验证及CI/CD流程集成。
通过docker run命令启动容器,挂载项目目录并执行测试或部署命令:
bash# 运行项目测试 docker run -v /本地项目路径:/app -e NODE_VERSION=16 --rm your-image-name npm test # 执行部署操作 docker run -v /本地项目路径:/app -e DEPLOY_TARGET=prod -e AWS_ACCESS_KEY=xxx -e AWS_SECRET_KEY=xxx --rm your-image-name serverless deploy
| 环境变量名 | 说明 | 默认值 |
|---|---|---|
NODE_VERSION | 指定Node.js运行版本(12/14/16/18) | 16 |
PROJECT_PATH | 容器内项目挂载路径 | /app |
DEPLOY_TARGET | 部署目标环境(dev/test/prod) | dev |
AWS_ACCESS_KEY | AWS云平台访问密钥(部署AWS时必填) | - |
AWS_SECRET_KEY | AWS云平台密钥(部署AWS时必填) | - |
SERVERLESS_CONFIG | Serverless配置文件路径 | /app/serverless.yml |
创建docker-compose.yml配置文件,集成测试与部署流程:
yamlversion: '3' services: sls-test-deploy: image: your-image-name volumes: - ./:/app environment: - NODE_VERSION=18 - DEPLOY_TARGET=test - AWS_ACCESS_KEY=${AWS_ACCESS_KEY} - AWS_SECRET_KEY=${AWS_SECRET_KEY} command: sh -c "npm install && npm test && serverless deploy --stage test"
package.json及测试配置文件(如jest.config.js、serverless.yml)node_modules目录以加速后续执行{node-version}-{tool***version}(如16-3.28.0表示Node.js 16 + Serverless Framework 3.28.0)manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务