Refactor to armv6

This commit is contained in:
Alex Ellis 2017-03-01 20:23:16 +00:00 committed by Alex Ellis
parent fe1e9fc52e
commit d5290aad1b
6 changed files with 130 additions and 88 deletions

2
.gitignore vendored
View File

@ -1,3 +1,3 @@
**/node_modules/
fwatchdog
fwatchdog-armhf
**/node_modules/

View File

@ -1,30 +0,0 @@
version: "3"
services:
gateway:
volumes:
- "/var/run/docker.sock:/var/run/docker.sock"
ports:
- 8080:8080
image: alexellis2/faas-gateway:latest-armhf
networks:
- functions
prometheus:
image: alexellis2/prometheus-armhf:latest
volumes:
- ./prometheus/prometheus.yml:/etc/prometheus/prometheus.yml
command: "-config.file=/etc/prometheus/prometheus.yml -storage.local.path=/prometheus -storage.local.memory-chunks=10000"
ports:
- 9090:9090
depends_on:
- gateway
environment:
no_proxy: "gateway"
networks:
- functions
networks:
functions:
driver: overlay
# Docker does not support this option yet - maybe create outside of the stack and reference as "external"?
#attachable: true

View File

@ -7,7 +7,7 @@ services:
- "/var/run/docker.sock:/var/run/docker.sock"
ports:
- 8080:8080
image: alexellis2/faas-gateway:latest-armhf
image: alexellis2/faas-gateway:latest-armhf-dev
networks:
- functions
deploy:
@ -15,7 +15,7 @@ services:
constraints: [node.role == manager]
prometheus:
image: alexellis2/prometheus-armhf:latest
image: alexellis2/prometheus-armhf:1.5.2
volumes:
- ./prometheus/prometheus.yml:/etc/prometheus/prometheus.yml
- ./prometheus/alert.rules:/etc/prometheus/alert.rules
@ -36,7 +36,7 @@ services:
alertmanager:
image: alexellis2/alertmanager-armhf
image: alexellis2/alertmanager-armhf:0.5.1
environment:
no_proxy: "gateway"
volumes:
@ -65,45 +65,6 @@ services:
no_proxy: "gateway"
https_proxy: $https_proxy
echoit:
image: alexellis2/faas-alpinefunction:latest-armhf
labels:
function: "true"
depends_on:
- gateway
networks:
- functions
environment:
fprocess: "cat"
no_proxy: "gateway"
https_proxy: $https_proxy
nodeinfo:
image: alexellis2/faas-nodeinfo:latest-armhf
labels:
function: "true"
depends_on:
- gateway
networks:
- functions
environment:
no_proxy: "gateway"
https_proxy: $https_proxy
hubstats:
image: alexellis2/faas-hubstats:latest-armhf
labels:
function: "true"
depends_on:
- gateway
networks:
- functions
environment:
no_proxy: "gateway"
https_proxy: $https_proxy
networks:
functions:
driver: overlay

View File

@ -0,0 +1,124 @@
version: "3"
services:
# Core API services are pinned, HA is provided for functions.
gateway:
volumes:
- "/var/run/docker.sock:/var/run/docker.sock"
ports:
- 8080:8080
image: alexellis2/faas-gateway:latest-armhf
networks:
- functions
deploy:
placement:
constraints: [node.role == manager]
prometheus:
image: alexellis2/prometheus-armhf:latest
volumes:
- ./prometheus/prometheus.yml:/etc/prometheus/prometheus.yml
- ./prometheus/alert.rules:/etc/prometheus/alert.rules
command: "-config.file=/etc/prometheus/prometheus.yml -storage.local.path=/prometheus -storage.local.memory-chunks=10000 --alertmanager.url=http://alertmanager:9093"
ports:
- 9090:9090
depends_on:
- gateway
- alertmanager
environment:
no_proxy: "gateway"
networks:
- functions
deploy:
placement:
constraints: [node.role == manager]
alertmanager:
image: alexellis2/alertmanager-armhf
environment:
no_proxy: "gateway"
volumes:
- ./prometheus/alertmanager.yml:/alertmanager.yml
command:
- '-config.file=/alertmanager.yml'
networks:
- functions
ports:
- 9093:9093
deploy:
placement:
constraints: [node.role == manager]
# Sample functions go here.
wordcount:
image: alexellis2/faas-alpinefunction:latest-armhf
labels:
function: "true"
depends_on:
- gateway
networks:
- functions
environment:
fprocess: "wc"
no_proxy: "gateway"
https_proxy: $https_proxy
echoit:
image: alexellis2/faas-alpinefunction:latest-armhf
labels:
function: "true"
depends_on:
- gateway
networks:
- functions
environment:
fprocess: "cat"
no_proxy: "gateway"
https_proxy: $https_proxy
nodeinfo:
image: alexellis2/faas-nodeinfo:latest-armhf
labels:
function: "true"
depends_on:
- gateway
networks:
- functions
environment:
no_proxy: "gateway"
https_proxy: $https_proxy
hubstats:
image: alexellis2/faas-hubstats:latest-armhf
labels:
function: "true"
depends_on:
- gateway
networks:
- functions
environment:
no_proxy: "gateway"
https_proxy: $https_proxy
# Converts body in (markdown format) -> (html)
markdown:
image: alexellis2/faas-markdownrender:latest-armhf
labels:
function: "true"
depends_on:
- gateway
networks:
- functions
environment:
no_proxy: "gateway"
https_proxy: $https_proxy
networks:
functions:
driver: overlay
# Docker does not support this option yet - maybe create outside of the stack and reference as "external"?
#attachable: true

View File

@ -8,6 +8,6 @@ docker create --name gateway_extract alexellis2/faas-gateway:build-armhf echo
docker cp gateway_extract:/go/src/github.com/alexellis/faas/gateway/app ./gateway
docker rm -f gateway_extract
echo Building alexellis2/faas-gateway:latest-armhf
echo Building alexellis2/faas-gateway:latest-armhf-dev
docker build -t alexellis2/faas-gateway:latest-armhf .
docker build -t alexellis2/faas-gateway:latest-armhf-dev .

View File

@ -1,13 +0,0 @@
#!/bin/sh
# Below makes use of "builder pattern" so that binary is extracted separate
# from the golang runtime/SDK
echo Building alexellis2/faas-watchdog:build-armhf
docker build --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy \
-t alexellis2/faas-watchdog:build-armhf . -f Dockerfile.armhf
docker create --name buildoutput alexellis2/faas-watchdog:build-armhf echo
docker cp buildoutput:/go/src/app/app ./fwatchdog
docker rm buildoutput