Skip to content
Snippets Groups Projects
docker-compose.armhf.yml 2.77 KiB
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: functions/gateway-armhf:0.6.0
        networks:
            - functions
        deploy:
            placement:
                constraints: [node.role == manager]

    prometheus:
        image: alexellis2/prometheus-armhf:1.5.2
        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:0.5.1
        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, but can be created in the UI too.
    nodeinfo:
        image: functions/nodeinfo:latest-armhf
        labels:
            function: "true"
        depends_on:
            - gateway
        networks:
            - functions
        environment:
            no_proxy:   "gateway"
            https_proxy: $https_proxy

    markdown:
        image: functions/markdownrender:latest-armhf
        labels:
            function: "true"
        depends_on:
            - gateway
        networks:
            - functions
        environment:
            no_proxy:   "gateway"
            https_proxy: $https_proxy
    wordcount:
        image: functions/alpine:latest-armhf
        labels:
            function: "true"
        depends_on:
            - gateway
        networks:
            - functions
        environment:
            fprocess:   "wc"
            no_proxy:   "gateway"
            https_proxy: $https_proxy
    echoit:
        image: functions/alpine:latest-armhf
        labels:
            function: "true"
        depends_on:
            - gateway
        networks:
            - functions
        environment:
            fprocess:   "cat"
            no_proxy:   "gateway"
            https_proxy: $https_proxy

networks:
    functions:
        driver: overlay