s.yaml 4.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. # ------------------------------------
  2. # If you need English case, you can refer to [s_en.yaml] file
  3. # ------------------------------------
  4. # 欢迎您使用阿里云函数计算 FC 组件进行项目开发
  5. # 组件仓库地址:https://github.com/devsapp/fc
  6. # 组件帮助文档:https://www.serverless-devs.com/fc/readme
  7. # Yaml参考文档:https://www.serverless-devs.com/fc/yaml/readme
  8. # 关于:
  9. # - Serverless Devs和FC组件的关系、如何声明/部署多个函数、超过50M的代码包如何部署
  10. # - 关于.fcignore使用方法、工具中.s目录是做什么、函数进行build操作之后如何处理build的产物
  11. # 等问题,可以参考文档:https://www.serverless-devs.com/fc/tips
  12. # 关于如何做CICD等问题,可以参考:https://www.serverless-devs.com/serverless-devs/cicd
  13. # 关于如何进行环境划分等问题,可以参考:https://www.serverless-devs.com/serverless-devs/extend
  14. # 更多函数计算案例,可参考:https://github.com/devsapp/awesome/
  15. # 有问题快来钉钉群问一下吧:33947367
  16. # ------------------------------------
  17. edition: 1.0.0
  18. name: hello-world-app
  19. # access 是当前应用所需要的密钥信息配置:
  20. # 密钥配置可以参考:https://www.serverless-devs.com/serverless-devs/command/config
  21. # 密钥使用顺序可以参考:https://www.serverless-devs.com/serverless-devs/tool#密钥使用顺序与规范
  22. access: default # 配置密钥信息
  23. vars: # 全局变量
  24. region: cn-beijing
  25. service:
  26. name: fc-example
  27. description: 'hello world by serverless devs'
  28. services:
  29. helloworld: # 业务名称/模块名称
  30. # 如果只想针对 helloworld 下面的业务进行相关操作,可以在命令行中加上 helloworld,例如:
  31. # 只对helloworld进行构建:s helloworld build
  32. # 如果不带有 helloworld ,而是直接执行 s build,工具则会对当前Yaml下,所有和 helloworld 平级的业务模块(如有其他平级的模块,例如下面注释的next-function),按照一定顺序进行 build 操作
  33. component: fc # 组件名称,Serverless Devs 工具本身类似于一种游戏机,不具备具体的业务能力,组件类似于游戏卡,用户通过向游戏机中插入不同的游戏卡实现不同的功能,即通过使用不同的组件实现不同的具体业务能力
  34. actions: # 自定义执行逻辑,关于actions 的使用,可以参考:https://www.serverless-devs.com/serverless-devs/yaml#行为描述
  35. pre-deploy: # 在deploy之前运行
  36. - run: mvn package
  37. path: ./
  38. # - component: fc build --use-docker --dockerfile ./code/Dockerfile # 要运行的组件,格式为【component: 组件名 命令 参数】(可以通过s cli registry search --type Component 获取组件列表)
  39. # - run: docker build xxx # 要执行的系统命令,类似于一种钩子的形式
  40. # path: ./src # 执行系统命令/钩子的路径
  41. # - plugin: myplugin # 与运行的插件 (可以通过s cli registry search --type Plugin 获取组件列表)
  42. # args: # 插件的参数信息
  43. # testKey: testValue
  44. # post-deploy: # 在deploy之后运行
  45. # - component: fc versions publish # 要运行的命令行
  46. props:
  47. region: ${vars.region} # 关于变量的使用方法,可以参考:https://www.serverless-devs.com/serverless-devs/yaml#变量赋值
  48. service: ${vars.service}
  49. function:
  50. name: java11-mongodb
  51. description: 'hello world by serverless devs'
  52. runtime: java11
  53. codeUri: ./target
  54. handler: example.App::handleRequest
  55. memorySize: 128
  56. timeout: 60
  57. initializationTimeout: 60
  58. initializer: example.App::initialize
  59. instanceLifecycleConfig:
  60. preStop:
  61. handler: example.App::preStop
  62. timeout: 60
  63. environmentVariables:
  64. MONGO_URL: "mongodb://xxxxx" # 设置mongodb数据库配置
  65. MONGO_DATABASE: "your database" # 设置mongodb数据库配置