openfass学习及使用
1.首先你得先安装docker Docker CE 17.05或者更高都可以,windows系统请安装Git bash
2.安装OpenFass
$ git clone htpps://github.com/openfaas/faas
3.在Docker守护程序上初始化Swarm
$ docker swarm init
4.部署Fass和示例函数
$ cd faas
$ ./deploy_stack.sh
5.安装CLI
Mac:
$ brew install faas-cli
Linux:
$ curl -sSL https://cli.openfass.com | sudo sh
如果您使用的是Windows,那么您运气不错,您可以在FaaS版本页面上找到Windows可执行文件。
6.编写您的功能:
$ mkdir -p ~/functions && \
cd ~/functions
7.使用CLI构建一个新的python函数
$ faas-cli new --lang python hello-python
这会为您创建三个文件你可以使用ls查看:
hello-python/handler.py
hello-python/requirements.txt
hello-python.yml
8.编辑handler.py文件实现你的需求,比如:
def handle(req):
print("Hello! You said:"+req)
9.查看yml文件,他会告诉你CLI要在OpenFass上构建和部署什么
$ vim hello-python.yml
$ gateway:如果需要,我们可以在这里指定远程网关
$ functions:函数及所在位置等
$ lang:python:使用Docker打包你的功能
$ handler:handler.py的路径
$ image:Docker镜像
10.构建函数:
$ faas-cli build -f ./hello-python.yml 注意每次修改函数需要重新build和deploy
$ faas-cli deploy -f ./hello-python.yml
显示以下命令表示他已准备好:
Deploying: hello-python.
No existing service to remove
Deployed.
200 OK
URL: http://localhost:8080/function/hello-python
11.调用:你可以使用UI或者输入以下命令调用:
$ curl localhost:8080/function/hello-python -d "it’s Alex here"
返回:Hello! You said:its Alex here
12.导入第三方依赖项
比如requests 首先pip install requests
现在我们可以更新我们的Python代码了。让我们这样做它可以接受URL的JSON请求和我们想要测试的字符串:
我们将使用JSON请求触发它,它将采用以下格式:
{
"url": "https://blog.alexellis.io/rss/",
"term": "docker"
}
13.现在更新hello-python/handler.py文件:
import requests
import json
def handle(req):
result = {"found": False}
json_req = json.loads(req)
r = requests.get(json_req["url"])
if json_req["term"] in r.text:
result = {"found": True}
14.重新部署:
$ faas-cli build -f ./hello-python.yml && \
faas-cli deploy -f ./hello-python.yml
15.测试:使用UI或者以下测试
$ curl localhost:8080/function/hello-python --data-binary '{
"url": "https://blog.alexellis.io/rss/",
"term": "docker"
}'
16结果:
{"found": true}
print json.dumps(result)
openfass学习及使用相关推荐
- java入门 慕路径,Java入门基础知识总结学习教程大全【必看经典】
类型的表达式,是循环条件,表达式3是党执行了一遍循环之后,修改控制循环的变量值. ??? for语句的执行过程是这样的:首先计算表达式1,完成必要的初始化工作:然后判断表达式2的值,如果表达式的值为t ...
- Java EE学习心得
–Java EE学习心得 1. 称为编程专家的秘诀是: 思考-----编程--------思考------编程--.. 编程不能一步到位,不能一上来就编,必须先思考如何写,怎样写?然后再编程 ...
- FastAI 2019课程学习笔记 lesson 2:自行获取数据并创建分类器
文章目录 数据获取 google_images_download 的安装和使用 挂载google 个人硬盘到Google colab中 删除不能打开文件 创建ImageDataBunch 训练模型 解 ...
- FastAI 课程学习笔记 lesson 1:宠物图片分类
文章目录 代码解析 神奇的"%" 导入fastAI 库 下载解压数据集 untar_data 获取帮助文档 help() ? ?? doc 设置路径 get_image_files ...
- 深度学习学习指南-工具篇
colab Colab是由Google提供的云计算服务,通过它可以让开发者很方便的使用google的免费资源(CPU.GPU.TPU)来训练自己的模型. 学习经验总结 如何使用命令行? 通过!+cmd ...
- Redis学习之路(一)--下载安装redis
redis学习之路--下载安装redis windows安装redis 1.下载redis 2.安装 3.查看是否安装成功 windows安装redis 1.下载redis 网址:https://gi ...
- python内置库之学习configparser库(一)
python内置库之学习configparser库(一) 1.引言 ini文件简介 [节] 键=值 注:节不能重复出现 2.自己封装了一个增删改查的类,可以参考一下 import configpars ...
- 前端Vue学习之路(二)-Vue-router路由
Vue学习之路 (二) Vue-router(基础版) 一.增加静态路由 二.动态路由+路由嵌套+404页面 三. 编程式导航 四.命名路由 五.命名视图 六.重定向和起别名 1.重定向 2.起别名 ...
- 前端Vue学习之路(一)-初识Vue
Vue学习之路 (一) 1.引言 2.更换npm国内镜像源 3.用npm下载Vue 4.Vue全家桶 5.使用命令创建项目 5.推荐插件 6.推荐网站 7.学习扩展 1.引言 先安装node.js环境 ...
最新文章
- 5个在线调试代码的网站
- OSChina 周六乱弹 —— 这辈子最丢脸的事
- Linux 计算某文件夹下的所有文件的md5值
- filter solutions安装教程
- Java单层循环实现输出九九乘法表
- 金色装饰素材,用这个技巧创造节日的感觉,完美
- 全国院线总票房破 50 亿!影院复工后,哪些电影最受欢迎?
- AIR切换SDK版本时遇到的问题
- HBase笔记整理(二)
- linux ping不允许的操作,Alpine ping:不允许操作
- java 插件开发教程_Eclipse插件开发的详细教程
- 模块化编程(C语言)
- 中国城市公园规划建设行业运行状况与趋势预测展望报告2022-2028年版
- 维修系统php源码,v3.4.0智睿报修管理系统
- Chrome网页观看百度云视频加速
- NCEPU-EDM使用说明
- Fullpage.js version 3 has changed its license to GPLv3 and it requires a `licenseKey` option ...
- 奔驰c260语言设置方法图解,奔驰C260L灯光使用方法,C260L灯光开关图解说明
- PTK(Pulmonarytoolkit)环境搭建与 ITK4.13+VS2015的配置
- vue设置网页title
热门文章
- springboot通过ITextPDF写入模板并下载
- ZLG 开源 GUI 引擎 AWTK 1.6 发布
- php修改excel表格数据,php修改excel表格数据-php怎么导入Excel表格到数据库,根据表格内的字段......
- 安道拓Adient EDI 830物料需求预测报文详解
- Vue CLI 官方文档(一)@vue/cli、@vue/cli-service、插件和 Preset
- JEDEC79-4翻译告一段落
- 【python】随机数的生成
- html5 点灯游戏,夜点灯剧情讲了什么 夜点灯游戏剧情背景介绍-游侠网
- 《飞机大战小游戏(Java)》
- 加载.node文件报错:no suitable image found. unknown file type, first eight bytes