Adjust sizing

This commit is contained in:
Alex 2017-01-04 19:11:11 +00:00
parent 271f7a5ce9
commit 098123d544

View File

@ -12,20 +12,20 @@ Minimum requirements:
* Docker 1.13-RC (to support attachable overlay networks)
* At least a single host in Swarm Mode. (run `docker swarm init`)
* Create an attachable network for the gateway and functions to join
#### Create an attachable network for the gateway and functions to join
```
# docker network create --driver overlay --attachable functions
```
* Start the gateway
#### Start the gateway
```
# docker pull alexellisio/faas-gateway:latest
# docker rm -f gateway; docker run -d -v /var/run/docker.sock:/var/run/docker.sock --name gateway -p 8080:8080 --network=functions alexellisio/faas-gateway:latest
```
* Start at least one of the serverless functions:
#### Start at least one of the serverless functions:
Here we start an echo service using the `cat` command found in a shell.
@ -33,30 +33,30 @@ Here we start an echo service using the `cat` command found in a shell.
# docker service rm catservice ; docker service create --network=functions --name catservice alexellisio/faas-catservice:latest
```
* Now send an event to the API gateway
#### Now send an event to the API gateway
**Method 1 - use the service name as a URL:**
* Method 1 - use the service name as a URL:
```
# curl -X POST --data-binary @$HOME/.ssh/known_hosts -v http://localhost:8080/function/catservice
```
**Method 2 - use the X-Function header:**
* Method 2 - use the X-Function header:
```
# curl -X POST -H 'x-function: catservice' --data-binary @$HOME/.ssh/known_hosts -v http://localhost:8080/
```
* Build your own function
#### Build your own function
Visit the accompanying blog post to find out how to build your own function in whatever programming language you prefer.
[FaaS blog post](http://blog.alexellis.io/functions-as-a-service/)
## Overview
# Overview
## the gateway
gateway
=======
This container acts in a similar way to the API Gateway on AWS. Requests can be made to this endpoint with a JSON body.
@ -75,8 +75,8 @@ Features:
* [todo] unique URL routes for serverless functions
* instrumentation via Prometheus metrics at GET /metrics
watchdog
========
## the watchdog
This binary fwatchdog acts as a watchdog for your function. Features:
@ -86,8 +86,7 @@ This binary fwatchdog acts as a watchdog for your function. Features:
* [todo] Only lets processes run for set duration i.e. 500ms, 2s, 3s.
* Language/binding independent
Building a development environment:
===================================
## Building a development environment:
To use multiple hosts you should push your services (functions) to the Docker Hub or a registry accessible to all nodes.
@ -112,8 +111,6 @@ Accessing the `cat` (read echo) service:
# curl -X POST -H 'x-function: catservice' --data-binary @/etc/hostname -v http://localhost:8080/
```
Prometheus metrics / instrumentation
====================================
* Standard go metrics and function invocation count / duration are available at http://localhost:8080/metrics/
## Prometheus metrics / instrumentation
Standard go metrics and function invocation count / duration are available at http://localhost:8080/metrics/