Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
O
openfaas-faas
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package Registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Team Jaz CS 598 CCC Final Project
openfaas-faas
Commits
098123d5
Commit
098123d5
authored
8 years ago
by
Alex
Browse files
Options
Downloads
Patches
Plain Diff
Adjust sizing
parent
271f7a5c
No related branches found
Branches containing commit
No related tags found
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
README.md
+15
-18
15 additions, 18 deletions
README.md
with
15 additions
and
18 deletions
README.md
+
15
−
18
View file @
098123d5
...
...
@@ -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/
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment