Brewblox assistence

Could you please run brewblox-ctl log, and post the link?

Here you have the link https://termbin.com/rof4a

Logs look fine. If you create a dashboard while using your pi frontend, do you see it on windows / after reloading the page?

I just created a dashboard with a metrics on the PI client. This dashboard is also visible on Google Chrome running in Windows 10, even without restarting Google Chrome :thinking:
I tried once more to create a widget graph in Windows, however this time the widget appears on the PI client instantly :face_with_hand_over_mouth:

Good to hear. Please let us know if the problem reappears.

I will do that :+1: It seems that the issue is something there mainly appears in Google Chrome running under Windows (10),and it does not remain if I initiate new dashboards under Rasbian Chrome.
Thanks for your reply :+1:

Hi, how can I change ports for Brewblox?
I just installed software for tilt and its using localhost :astonished:

brewblox-ctl ports lets you choose the ports open in your host (HTTP, HTTPS, Mdns). The tilt service also opens a port. I believe you can set this in docker-compose.yml

I’m not sure what you mean with “tilt software is using localhost”. Does it have a port conflict?

Since I had an issue with loosing connection to tilt, i installed this https://bitbucket.org/lgpaulsen/tiltpi. This is a webprogram using localhost (80) i think.

You should be fine running brewblox-ctl ports, and remapping the http port (80)

1 Like

Super, thak you. :smiley:

Hi

After a good month of stable running, I’m all of the sudden not able to connect to my Spark…
I have tried updating the system but with no effect…

Any guides on how to resolve this one?
I only get the yellow messages saying " Lost connection to Spark Controller ‘spark-one’"

THe API error file states
{
“fetch”: [
{
“info”: “/spark-one/system/status”,
“body”: “Bad Gateway”,
“time”: “Tue Jun 04 2019 23:43:33 GMT+0200 (Central European Summer Time)”,
“status”: 502
},
{
“info”: “/spark-one/system/status”,
“body”: “Gateway Timeout”,
“time”: “Tue Jun 04 2019 23:44:08 GMT+0200 (Central European Summer Time)”,
“status”: 504
},
{
“info”: “/spark-one/system/status”,
“body”: “Bad Gateway”,
“time”: “Tue Jun 04 2019 23:44:37 GMT+0200 (Central European Summer Time)”,
“status”: 502
},
{
“info”: “/spark-one/system/status”,
“body”: “Bad Gateway”,
“time”: “Tue Jun 04 2019 23:44:40 GMT+0200 (Central European Summer Time)”,
“status”: 502
},
],
“db”: []
}

THanks
Bjørn

We released a firmware update yesterday. Did you flash the controller during the update?

Your errors suggest the service crashed or did not start. Could you please run brewblox-ctl log and post the result?

Hi
I hope this is the file you asked for.
I had to delete a big part in the middle, but it seemed to only be recurring information.
I also had to split in in two

Bjørn

BREWBLOX DIAGNOSTIC DUMP
Wed  5 Jun 17:01:21 BST 2019
Spark connection error
==============VARS==============
Linux raspberrypi 4.14.98-v7+ #1200 SMP Tue Feb 12 20:27:48 GMT 2019 armv7l GNU/Linux
Docker version 18.09.0, build 4d60db4
docker-compose version 1.24.0, build 0aa5906
BREWBLOX_RELEASE=edge
BREWBLOX_PORT_HTTP=80
BREWBLOX_CFG_VERSION=0.2.1
BREWBLOX_PORT_HTTPS=443
BREWBLOX_PORT_MDNS=5000
==============CONFIG==============
version: '3'

services:

  mdns:
    image: brewblox/brewblox-mdns:rpi-${BREWBLOX_RELEASE:-stable}
    network_mode: host
    restart: unless-stopped
    command: >
      --port=${BREWBLOX_PORT_MDNS:-5000}

  eventbus:
    image: arm32v6/rabbitmq:alpine
    restart: unless-stopped

  influx:
    image: influxdb
    restart: unless-stopped
    volumes:
      - ./influxdb:/var/lib/influxdb
    environment:
      - INFLUXDB_HTTP_LOG_ENABLED=false
      - INFLUXDB_LOGGING_LEVEL=warn
      - INFLUXDB_DATA_WAL_FSYNC_DELAY=1s
      - INFLUXDB_DATA_INDEX_VERSION=tsi1

  datastore:
    image: treehouses/couchdb
    restart: unless-stopped
    labels:
      - "traefik.port=5984"
      - "traefik.frontend.rule=PathPrefixStrip: /datastore"
    volumes:
      - ./couchdb/:/opt/couchdb/data/

  spark-one:
    image: brewblox/brewblox-devcon-spark:rpi-${BREWBLOX_RELEASE:-stable}
    privileged: true
    depends_on:
      - eventbus
      - datastore
    restart: unless-stopped
    labels:
      - "traefik.port=5000"
      - "traefik.frontend.rule=PathPrefix: /spark-one"
    command: >
      --name=spark-one
      --mdns-port=${BREWBLOX_PORT_MDNS:-5000}

  history:
    image: brewblox/brewblox-history:rpi-${BREWBLOX_RELEASE:-stable}
    depends_on:
      - influx
      - eventbus
    restart: unless-stopped
    labels:
      - "traefik.port=5000"
      - "traefik.frontend.rule=PathPrefix: /history"

  ui:
    image: brewblox/brewblox-ui:rpi-${BREWBLOX_RELEASE:-stable}
    restart: unless-stopped
    labels:
      - "traefik.port=80"
      - "traefik.frontend.rule=PathPrefix: /"

  traefik:
    image: traefik
    restart: unless-stopped
    ports:
      - ${BREWBLOX_PORT_HTTP:-80}:${BREWBLOX_PORT_HTTP:-80}
      - ${BREWBLOX_PORT_HTTPS:-443}:${BREWBLOX_PORT_HTTPS:-443}
    volumes:
      - ./traefik:/config
      - /var/run/docker.sock:/var/run/docker.sock
    command: >
      -c /dev/null
      --docker 
      --docker.domain=brewblox.local
      --entrypoints='name:http Address::${BREWBLOX_PORT_HTTP:-80} Redirect.EntryPoint:https'
      --entrypoints='name:https Address::${BREWBLOX_PORT_HTTPS:-443} TLS:config/brewblox.crt,config/brewblox.key'
      --defaultentrypoints="http,https"
==============LOGS==============
Attaching to brewblox_ui_1
ui_1         | 2019-06-05T15:41:49.833209839Z 172.19.0.4 - - [05/Jun/2019:15:41:49 +0000] "GET /spark-one/system/status HTTP/1.1" 200 1891 "https://192.168.10.71/service/spark-one" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36" "192.168.10.208"





history_1    | 2019-06-05T16:00:32.915889961Z   File "/usr/local/lib/python3.7/site-packages/brewblox_service/events.py", line 30, in <module>
history_1    | 2019-06-05T16:00:32.915921732Z     import aioamqp
history_1    | 2019-06-05T16:00:32.915951836Z   File "/usr/local/lib/python3.7/site-packages/aioamqp/__init__.py", line 4, in <module>
history_1    | 2019-06-05T16:00:32.915983189Z     import ssl as ssl_module  # import as to enable argument named ssl in connect
history_1    | 2019-06-05T16:00:32.916067147Z   File "/usr/local/lib/python3.7/ssl.py", line 98, in <module>
history_1    | 2019-06-05T16:00:32.916098605Z     import _ssl             # if we can't import it, let the error propagate
history_1    | 2019-06-05T16:00:32.916127667Z ImportError: /usr/local/lib/python3.7/lib-dynload/_ssl.cpython-37m-arm-linux-gnueabihf.so: cannot open shared object file: No such file or directory
history_1    | 2019-06-05T16:01:45.562610500Z Traceback (most recent call last):
history_1    | 2019-06-05T16:01:45.562845445Z   File "/usr/local/lib/python3.7/runpy.py", line 193, in _run_module_as_main
history_1    | 2019-06-05T16:01:45.562887632Z     "__main__", mod_spec)
history_1    | 2019-06-05T16:01:45.562918257Z   File "/usr/local/lib/python3.7/runpy.py", line 85, in _run_code
history_1    | 2019-06-05T16:01:45.562949038Z     exec(code, run_globals)
history_1    | 2019-06-05T16:01:45.562978673Z   File "/usr/local/lib/python3.7/site-packages/brewblox_history/__main__.py", line 5, in <module>
history_1    | 2019-06-05T16:01:45.563010651Z     from brewblox_service import brewblox_logger, events, scheduler, service
history_1    | 2019-06-05T16:01:45.563040859Z   File "/usr/local/lib/python3.7/site-packages/brewblox_service/events.py", line 30, in <module>
history_1    | 2019-06-05T16:01:45.563072421Z     import aioamqp
history_1    | 2019-06-05T16:01:45.563101379Z   File "/usr/local/lib/python3.7/site-packages/aioamqp/__init__.py", line 4, in <module>
history_1    | 2019-06-05T16:01:45.563132681Z     import ssl as ssl_module  # import as to enable argument named ssl in connect
history_1    | 2019-06-05T16:01:45.563162629Z   File "/usr/local/lib/python3.7/ssl.py", line 98, in <module>
history_1    | 2019-06-05T16:01:45.563192993Z     import _ssl             # if we can't import it, let the error propagate
history_1    | 2019-06-05T16:01:45.563223305Z ImportError: /usr/local/lib/python3.7/lib-dynload/_ssl.cpython-37m-arm-linux-gnueabihf.so: cannot open shared object file: No such file or directory


==============INSPECT==============
[
    {
        "Id": "sha256:026516a790b3aaa14b34db8b5e4707a4bb74d526ecc8bdeec568dc1ad3a1799e",
        "RepoTags": [
            "treehouses/couchdb:latest"
        ],
        "RepoDigests": [
            "treehouses/couchdb@sha256:6c670ee175afac86bc9a74a549f47505996486728c641848ce3c675545b79b1e"
        ],
        "Parent": "",
        "Comment": "",
        "Created": "2018-09-17T17:16:30.33857338Z",
        "Container": "08231e412f39b410c787148e323fe3e41871de05fd22f22149623cd6ba5576e0",
        "ContainerConfig": {
            "Hostname": "8a0b76ee7a05",
            "Domainname": "",
            "User": "",
            "AttachStdin": false,
            "AttachStdout": false,
            "AttachStderr": false,
            "ExposedPorts": {
                "4369/tcp": {},
                "5984/tcp": {},
                "9100/tcp": {}
            },
            "Tty": false,
            "OpenStdin": false,
            "StdinOnce": false,
            "Env": [
                "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                "TINI_VERSION=0.16.1",
                "LC_ALL=C.UTF-8",
                "DEBIAN_FRONTEND=noninteractive",
                "UDEV=on",
                "QEMU_CPU=arm1176",
                "container=docker",
                "GOSU_VERSION=1.10",
                "GPG_KEYS=15DD4F3B8AACA54740EB78C7B7B7C53943ECCEE1   1CFBFA43C19B6DF4A0CA3934669C02FFDF3CEBA3   25BBBAC113C1BFD5AA594A4C9F96B92930380381   4BFCA2B99BADC6F9F105BEC9C5E32E2D6B065BFB   5D680346FAA3E51B29DBCB681015F68F9DA248BC   7BCCEB868313DDA925DF1805ECA5BCB7BB9656B0   C3F4DFAEAD621E1C94523AEEC376457E61D50B88   D2B17F9DA23C0A10991AF2E3D9EE01E47852AEE4   E0AF0A194D55C84E4A19A801CDB0C0F904F4EE9B   29E4F38113DF707D722A6EF91FE9AF73118F1A7C   2EC788AE3F239FA13E82D215CDE711289384AE37",
                "COUCHDB_VERSION=2.2.0"
            ],
            "Cmd": [
                "/bin/sh",
                "-c",
                "#(nop) ",
                "CMD [\"/opt/couchdb/bin/couchdb\"]"
            ],
            "ArgsEscaped": true,
            "Image": "sha256:d97645d7dea60a80e42e38ae07264761c547f77c164558df4bb28f7a6b2a16a8",
            "Volumes": {
                "/opt/couchdb/data": {},
                "/sys/fs/cgroup": {}
            },
            "WorkingDir": "/opt/couchdb",
            "Entrypoint": [
                "tini",
                "--",
                "/docker-entrypoint.sh"
            ],
            "OnBuild": null,
            "Labels": {
                "io.resin.architecture": "rpi",
                "io.resin.device-type": "raspberrypi",
                "io.resin.qemu.version": "",
                "maintainer": "sahil@ole.org,mappuji@ole.org"
            },
            "StopSignal": "37"
        },
        "DockerVersion": "18.06.1-ce",
        "Author": "",
        "Config": {
            "Hostname": "8a0b76ee7a05",
            "Domainname": "",
            "User": "",
            "AttachStdin": false,
            "AttachStdout": false,
            "AttachStderr": false,
            "ExposedPorts": {
                "4369/tcp": {},
                "5984/tcp": {},
                "9100/tcp": {}
            },
            "Tty": false,
            "OpenStdin": false,
            "StdinOnce": false,
            "Env": [
                "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                "TINI_VERSION=0.16.1",
                "LC_ALL=C.UTF-8",
                "DEBIAN_FRONTEND=noninteractive",
                "UDEV=on",
                "QEMU_CPU=arm1176",
                "container=docker",
                "GOSU_VERSION=1.10",
                "GPG_KEYS=15DD4F3B8AACA54740EB78C7B7B7C53943ECCEE1   1CFBFA43C19B6DF4A0CA3934669C02FFDF3CEBA3   25BBBAC113C1BFD5AA594A4C9F96B92930380381   4BFCA2B99BADC6F9F105BEC9C5E32E2D6B065BFB   5D680346FAA3E51B29DBCB681015F68F9DA248BC   7BCCEB868313DDA925DF1805ECA5BCB7BB9656B0   C3F4DFAEAD621E1C94523AEEC376457E61D50B88   D2B17F9DA23C0A10991AF2E3D9EE01E47852AEE4   E0AF0A194D55C84E4A19A801CDB0C0F904F4EE9B   29E4F38113DF707D722A6EF91FE9AF73118F1A7C   2EC788AE3F239FA13E82D215CDE711289384AE37",
                "COUCHDB_VERSION=2.2.0"
            ],
            "Cmd": [
                "/opt/couchdb/bin/couchdb"
            ],
            "ArgsEscaped": true,
            "Image": "sha256:d97645d7dea60a80e42e38ae07264761c547f77c164558df4bb28f7a6b2a16a8",
            "Volumes": {
                "/opt/couchdb/data": {},
                "/sys/fs/cgroup": {}
            },
            "WorkingDir": "/opt/couchdb",
            "Entrypoint": [
                "tini",
                "--",
                "/docker-entrypoint.sh"
            ],
            "OnBuild": null,
            "Labels": {
                "io.resin.architecture": "rpi",
                "io.resin.device-type": "raspberrypi",
                "io.resin.qemu.version": "",
                "maintainer": "sahil@ole.org,mappuji@ole.org"
            },
            "StopSignal": "37"
        },
        "Architecture": "amd64",
        "Os": "linux",
        "Size": 277599753,
        "VirtualSize": 277599753,
        "GraphDriver": {
            "Data": {
                "LowerDir": "/var/lib/docker/overlay2/9350b50eec547c5ae0b5bce783132e4a6b4a1c25c5f1a33ebb49f770eb0ff470/diff:/var/lib/docker/overlay2/4cbf3618c35a849061d25a33b44bbe17d4620c7c158b0771de04fa8bd3dc4d5c/diff:/var/lib/docker/overlay2/877359078ef490e0d90aad1fd05a2a5b7a6cee336e2bdb9a0256436def28557a/diff:/var/lib/docker/overlay2/ce3bcfc9dfbf55c039879a2a2d38560805b91eb5e68330b2903beab5109ec532/diff:/var/lib/docker/overlay2/9acb9a527f2fb8310fef3c7fe7c5fbd6cb8d35efaed6035082de091211897f6c/diff:/var/lib/docker/overlay2/a565fd11b23efae157c74c966e62781841e5b0cb3482b87370f8aea7db667c40/diff:/var/lib/docker/overlay2/513782424a2b541de07b8b1e1833ba6deb27d29285c1dac6f51797e6c08c6734/diff:/var/lib/docker/overlay2/186beeafcce9707a1eee3eb1445b93b8482f49a4f42f96c8ad7a1249d633372e/diff:/var/lib/docker/overlay2/2f66ec4bbe4d000c382d7186554f413c5421a3ddcae88cc7c862311c9dfc4040/diff:/var/lib/docker/overlay2/5a38a5d83872709b62814de830679991569d92e0c78c6b966db95595914a2e18/diff:/var/lib/docker/overlay2/6965cd594d0b08b28c19d010d4dcbdae2e695e4d5df84e647603f904e28240ee/diff:/var/lib/docker/overlay2/5635ac72cafc78dc50cea58a552d414f9709bf4927c29d6b530683cd2f9a9f75/diff:/var/lib/docker/overlay2/8ff6bb60bb630b33b8fa682870b383ebc8aa3379178c85ec846a874a6a94add9/diff:/var/lib/docker/overlay2/e677ec066205db7978383cae8b5c24a6fe3530935f46967e33352d8cc36bea72/diff:/var/lib/docker/overlay2/3a9220b03fdcdd21f36f288bc0b48f5326b1a8ce2271b24174b1e2ad1e82fd7a/diff:/var/lib/docker/overlay2/0559ea19995ec3108e54278939129697d0b7a08eb11d5430540460e119d4efaf/diff:/var/lib/docker/overlay2/95d67f22b79c13e05a040d0cf5374133c79dfe406a6cb2f9b6b4cd7ac861bb4d/diff:/var/lib/docker/overlay2/a3a94c98f133ace7bb283770815d5c11fcd93b6706e5a4a7f218b4b058573ca7/diff:/var/lib/docker/overlay2/aeae1b62f5d9305e80a7d7df1474dcc4361b313d02df396da3ca2e0fa88faffa/diff",
                "MergedDir": "/var/lib/docker/overlay2/408533d3ecca2a6138442c62cf6aec6255bde3b266ab149833541d5a3a08a61b/merged",
                "UpperDir": "/var/lib/docker/overlay2/408533d3ecca2a6138442c62cf6aec6255bde3b266ab149833541d5a3a08a61b/diff",
                "WorkDir": "/var/lib/docker/overlay2/408533d3ecca2a6138442c62cf6aec6255bde3b266ab149833541d5a3a08a61b/work"
            },
            "Name": "overlay2"
        },
        "RootFS": {
            "Type": "layers",
            "Layers": [
                "sha256:1eab145d69f9a5987d7ce1f30c4be5de5d4a66a30bce905065857d3098ed60d5",
                "sha256:29538470604e8c512c17700916fd57d80c8d0f986ab52ce51f8920e191d691bb",
                "sha256:c448c501aa9a494d5faf1e75e3d7b0b2cb11da7a578d2613a5198536e65db839",
                "sha256:896dcb3b5ea5963e83cf9c5c0edd6965bb243e2c4226799b79b82e2081b16fc2",
                "sha256:96402a861a05cbea082618efc9d394e120a8f07a74c6351d4373ff8d96ed3d52",
                "sha256:9cdc58d49d1180a8b0fd9ac8f293348ed6f9cf3929bbb1e05a6fe0dc872a95e7",
                "sha256:6e6422f600d6379cfb5b71f8b865bb3573740374ec076025de3096eb4e55913d",
                "sha256:78c86db52d2e4150ad7e985cddb88a427bbe9dca0245adba7a8c817efc8e87b0",
                "sha256:d8c9c3b674a4d4987787227730a1b0c09da0ae2d549721b90cc0f216aeab2e7b",
                "sha256:9769441c5a758e051699c00acbb7937586b162154acb976a11b24a9859507846",
                "sha256:3792bfde1eedd775fb6cb04cac310d878d3eeac4196f309b0cdad83f92efadcc",
                "sha256:e775cad228de62d9576383f960d7a0af928a8758057de46de479111273caca41",
                "sha256:66e6f526409b2f8c941f9208e2cd5bec2cf77b345f26b0acd288bf0864c05712",
                "sha256:7db4500d13a1ddcd1f235eb94dae5ad7b15aef84ccef69bc886c183a2622370d",
                "sha256:c811872f00c109d0e575f5cec50dee0c12647528cc32a1df0edcee8f1d7c084f",
                "sha256:6c38ee854ffca0d74c481b53910bc70ae28f14aa3b4c4769599cba2b2e5751e0",
                "sha256:d2f0e4eb3218f1666cbc07294b411800f78c6cc9dffb8e52074d984c9b331ccf",
                "sha256:45b168f1a7a9adbf7a69af9d87ff83c61d019b51c613b3a63a72ff8dd4f4f2f4",
                "sha256:5b53b776492a5f73fd9d16bd3a5fa059af52ec4c7b9602f57967578df999c084",
                "sha256:20ea93bacb66eb57d7c11e459ab1d358451e39059f5418e1c07e38ebfea0ae95"
            ]
        },
        "Metadata": {
            "LastTagTime": "0001-01-01T00:00:00Z"
        }
    }
]
[
    {
        "Id": "sha256:a0a127340d28e8a3f8c7d4a6721fc0ac8c2f15df1027e526fbd1d9cbbfe037e6",
        "RepoTags": [
            "arm32v6/rabbitmq:alpine"
        ],
        "RepoDigests": [
            "arm32v6/rabbitmq@sha256:d7b4176678f0b03dc3e94d03edbdafe239a41a4377c8eb1a840ce7e33c0cae91"
        ],
        "Parent": "",
        "Comment": "",
        "Created": "2019-06-04T21:31:56.617366793Z",
        "Container": "68655309284acf2cc2b1959effb7f074702102101b8c515de01c286993745f4f",
        "ContainerConfig": {
            "Hostname": "68655309284a",
            "Domainname": "",
            "User": "",
            "AttachStdin": false,
            "AttachStdout": false,
            "AttachStderr": false,
            "ExposedPorts": {
                "25672/tcp": {},
                "4369/tcp": {},
                "5671/tcp": {},
                "5672/tcp": {}
            },
            "Tty": false,
            "OpenStdin": false,
            "StdinOnce": false,
            "Env": [
                "PATH=/opt/rabbitmq/sbin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                "OPENSSL_VERSION=1.1.1c",
                "OPENSSL_SOURCE_SHA256=f6fb3079ad15076154eda9413fed42877d668e7069d9b87396d0804fdb3f4c90",
                "OPENSSL_PGP_KEY_IDS=0x8657ABB260F056B1E5190839D9C4D26D0E604491 0x5B2545DAB21995F4088CEFAA36CEE4DEB00CFE33 0xED230BEC4D4F2518B9D7DF41F0DB4D21C1D35231 0xC1F33DD8CE1D4CC613AF14DA9195C48241FBF7DD 0x7953AC1FBC3DC8B3B292393ED5E9E43F7DF9EE8C 0xE5E52560DD91C556DDBDA5D02064C53641C25E5D",
                "OTP_VERSION=22.0.2",
                "OTP_SOURCE_SHA256=7a9869f5da85349ef21bd9fbc8feafe1a1f563504a65924ddb542deeb37af7cd",
                "RABBITMQ_DATA_DIR=/var/lib/rabbitmq",
                "RABBITMQ_VERSION=3.7.15",
                "RABBITMQ_PGP_KEY_ID=0x0A9AF2115F4687BD29803A206B73A36E6026DFCA",
                "RABBITMQ_HOME=/opt/rabbitmq",
                "RABBITMQ_LOGS=-",
                "RABBITMQ_SASL_LOGS=-",
                "HOME=/var/lib/rabbitmq",
                "LANG=C.UTF-8",
                "LANGUAGE=C.UTF-8",
                "LC_ALL=C.UTF-8"
            ],
            "Cmd": [
                "/bin/sh",
                "-c",
                "#(nop) ",
                "CMD [\"rabbitmq-server\"]"
            ],
            "ArgsEscaped": true,
            "Image": "sha256:0ea542676e1ead78908753d834b54c18a1a18c57a896e5ace7262de9843ef0c3",
            "Volumes": {
                "/var/lib/rabbitmq": {}
            },
            "WorkingDir": "",
            "Entrypoint": [
                "docker-entrypoint.sh"
            ],
            "OnBuild": null,
            "Labels": {}
        },
        "DockerVersion": "18.06.1-ce",
        "Author": "",
        "Config": {
            "Hostname": "",
            "Domainname": "",
            "User": "",
            "AttachStdin": false,
            "AttachStdout": false,
            "AttachStderr": false,
            "ExposedPorts": {
                "25672/tcp": {},
                "4369/tcp": {},
                "5671/tcp": {},
                "5672/tcp": {}
            },
            "Tty": false,
            "OpenStdin": false,
            "StdinOnce": false,
            "Env": [
                "PATH=/opt/rabbitmq/sbin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                "OPENSSL_VERSION=1.1.1c",
                "OPENSSL_SOURCE_SHA256=f6fb3079ad15076154eda9413fed42877d668e7069d9b87396d0804fdb3f4c90",
                "OPENSSL_PGP_KEY_IDS=0x8657ABB260F056B1E5190839D9C4D26D0E604491 0x5B2545DAB21995F4088CEFAA36CEE4DEB00CFE33 0xED230BEC4D4F2518B9D7DF41F0DB4D21C1D35231 0xC1F33DD8CE1D4CC613AF14DA9195C48241FBF7DD 0x7953AC1FBC3DC8B3B292393ED5E9E43F7DF9EE8C 0xE5E52560DD91C556DDBDA5D02064C53641C25E5D",
                "OTP_VERSION=22.0.2",
                "OTP_SOURCE_SHA256=7a9869f5da85349ef21bd9fbc8feafe1a1f563504a65924ddb542deeb37af7cd",
                "RABBITMQ_DATA_DIR=/var/lib/rabbitmq",
                "RABBITMQ_VERSION=3.7.15",
                "RABBITMQ_PGP_KEY_ID=0x0A9AF2115F4687BD29803A206B73A36E6026DFCA",
                "RABBITMQ_HOME=/opt/rabbitmq",
                "RABBITMQ_LOGS=-",
                "RABBITMQ_SASL_LOGS=-",
                "HOME=/var/lib/rabbitmq",
                "LANG=C.UTF-8",
                "LANGUAGE=C.UTF-8",
                "LC_ALL=C.UTF-8"
            ],
            "Cmd": [
                "rabbitmq-server"
            ],
            "ArgsEscaped": true,
            "Image": "sha256:0ea542676e1ead78908753d834b54c18a1a18c57a896e5ace7262de9843ef0c3",
            "Volumes": {
                "/var/lib/rabbitmq": {}
            },
            "WorkingDir": "",
            "Entrypoint": [
                "docker-entrypoint.sh"
            ],
            "OnBuild": null,
            "Labels": null
        },
        "Architecture": "arm",
        "Os": "linux",
        "Size": 79566698,
        "VirtualSize": 79566698,
        "GraphDriver": {
            "Data": {
                "LowerDir": "/var/lib/docker/overlay2/d2f986f475482b1c060ebc48112e16c03cd70eee643a1dd866d394120031875a/diff:/var/lib/docker/overlay2/8a577d1eaea68905d241e19b106598ea3c9ac575ce7f82550fc32d5063039904/diff:/var/lib/docker/overlay2/58f304827587f0c23c72d25b732318ee0abd6c536abc7625bf249fc041e9072f/diff:/var/lib/docker/overlay2/bd6828ec85e11f6307825cdec88e0b5d07fdff4ec19076ecc0b13a62e12a2918/diff:/var/lib/docker/overlay2/60adefd2a2c8c20005d3a0ca58dc690e8023f47c53150a1fc12bc7616da99f94/diff:/var/lib/docker/overlay2/9572b7ca4b922b5988fd9a6e7b5d1f17924e7fa2480b8b35fa6256a11626be50/diff",
                "MergedDir": "/var/lib/docker/overlay2/7b1865514c5a31b1aa60a12dd8a5a7882b277b9587fba4ab1b463231d7ce6caf/merged",
                "UpperDir": "/var/lib/docker/overlay2/7b1865514c5a31b1aa60a12dd8a5a7882b277b9587fba4ab1b463231d7ce6caf/diff",
                "WorkDir": "/var/lib/docker/overlay2/7b1865514c5a31b1aa60a12dd8a5a7882b277b9587fba4ab1b463231d7ce6caf/work"
            },
            "Name": "overlay2"
        },
        "RootFS": {
            "Type": "layers",
            "Layers": [
                "sha256:5826482cf200371de3cf495d43ba8e97e2a751c56713b7b2bcdae49f08effa51",
                "sha256:38d7053946c34abd9ee2948ba532b0abe343626b7a0b3b1dfa39637a28c079fd",
                "sha256:f63f88b258d82eb6aabc0794f541805eee1d7788a8cea3f219bffbf824bbcf6d",
                "sha256:9e61605b5ab8e0cae344de3b396b12cc9fbebcb86f814d76ad1f036c55a4717a",
                "sha256:426edb015158dabda1d06ef099b854424ef9128f323001bc3e4403d45550d3f7",
                "sha256:9a5199cd417bb1394d4c433f575a4ab21119a7bb37a3b9f255926c61bcab5690",
                "sha256:1150adddac6b385d2d1ffdccdbced3468952e906b045e118dcc56d384ee44651"
            ]
        },
        "Metadata": {
            "LastTagTime": "0001-01-01T00:00:00Z"
        }
    }
]
[
    {
        "Id": "sha256:3f430f332bbe86d406e429ed93d58dd1b815db6bc960c133b6db224f1dd659dd",
        "RepoTags": [
            "brewblox/brewblox-history:rpi-edge"
        ],
        "RepoDigests": [
            "brewblox/brewblox-history@sha256:c12bc22bc5f4904942fc66c72a5291778864c4f5167bd2fc83c032872163dda5"
        ],
        "Parent": "",
        "Comment": "",
        "Created": "2019-05-28T16:34:58.307984763Z",
        "Container": "ccc170bbcbf17d37d13ad1d1b8a3750f22c07d418ee477efe01801132b86a29a",
        "ContainerConfig": {
            "Hostname": "ccc170bbcbf1",
            "Domainname": "",
            "User": "",
            "AttachStdin": false,
            "AttachStdout": false,
            "AttachStderr": false,
            "ExposedPorts": {
                "5000/tcp": {}
            },
            "Tty": false,
            "OpenStdin": false,
            "StdinOnce": false,
            "Env": [
                "PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                "LANG=C.UTF-8",
                "GPG_KEY=0D96DF4D4110E5C43FBFB17F2D347EA6AA65421D",
                "PYTHON_VERSION=3.7.3",
                "PYTHON_PIP_VERSION=19.0.3",
                "SERVICE_INFO=0.9.0-37-g81be522 @ Tue May 28 16:32:18 UTC 2019"
            ],
            "Cmd": [
                "/bin/sh",
                "-c",
                "#(nop) ",
                "ENTRYPOINT [\"python3\" \"-m\" \"brewblox_history\"]"
            ],
            "ArgsEscaped": true,
            "Image": "sha256:a1471e087f0dd51354614ff761cee28dd0a60a2ab8415761c329a3898291b40b",
            "Volumes": null,
            "WorkingDir": "/app",
            "Entrypoint": [
                "python3",
                "-m",
                "brewblox_history"
            ],
            "OnBuild": null,
            "Labels": {}
        },
        "DockerVersion": "3.0.4",
        "Author": "",
        "Config": {
            "Hostname": "",
            "Domainname": "",
            "User": "",
            "AttachStdin": false,
            "AttachStdout": false,
            "AttachStderr": false,
            "ExposedPorts": {
                "5000/tcp": {}
            },
            "Tty": false,
            "OpenStdin": false,
            "StdinOnce": false,
            "Env": [
                "PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                "LANG=C.UTF-8",
                "GPG_KEY=0D96DF4D4110E5C43FBFB17F2D347EA6AA65421D",
                "PYTHON_VERSION=3.7.3",
                "PYTHON_PIP_VERSION=19.0.3",
                "SERVICE_INFO=0.9.0-37-g81be522 @ Tue May 28 16:32:18 UTC 2019"
            ],
            "Cmd": null,
            "ArgsEscaped": true,
            "Image": "sha256:a1471e087f0dd51354614ff761cee28dd0a60a2ab8415761c329a3898291b40b",
            "Volumes": null,
            "WorkingDir": "/app",
            "Entrypoint": [
                "python3",
                "-m",
                "brewblox_history"
            ],
            "OnBuild": null,
            "Labels": null
        },
        "Architecture": "arm",
        "Os": "linux",
        "Size": 137477452,
        "VirtualSize": 137477452,
        "GraphDriver": {
            "Data": {
                "LowerDir": "/var/lib/docker/overlay2/9c97608a084550104987f06dcf79db5761fee63df024100454013c8c1c7d7f20/diff:/var/lib/docker/overlay2/ad680d49a67e223e54b59d780d8708b09b3c44d2db74c034276d4ac5ece4e0fb/diff:/var/lib/docker/overlay2/33ed1dc1f30bb8607beb707817749330b9199eb3e365423d51a5dcd68034335c/diff:/var/lib/docker/overlay2/91ab733a6468456c4483393536d0ed579fee9e9427b56794827e74ed81aff349/diff:/var/lib/docker/overlay2/808205e742e5779afff51f6d71957fc061cecbaeec208e6b2c2d6f0ae68cdc00/diff:/var/lib/docker/overlay2/c4e9bb6be54afaefa5231272564be2d81ff93457c8e411aa0d65d0c894708c74/diff:/var/lib/docker/overlay2/5f846d69077c577812354a8d10676684d127d96f637be89dfc1e2a5fb16b874c/diff:/var/lib/docker/overlay2/34edf1f9edd4e637459595d7bd33721fd40ee98754d7aad1773466e99db0a5b5/diff:/var/lib/docker/overlay2/b2d11c563a664e42797b56e6bc8eaa1edc25d19d6ac5498b34eeb1e58f7c36f8/diff",
                "MergedDir": "/var/lib/docker/overlay2/d63f327cb6d1be1a20ab2767b57fb78b0d0c65cbc568d6df5bf49172c663f232/merged",
                "UpperDir": "/var/lib/docker/overlay2/d63f327cb6d1be1a20ab2767b57fb78b0d0c65cbc568d6df5bf49172c663f232/diff",
                "WorkDir": "/var/lib/docker/overlay2/d63f327cb6d1be1a20ab2767b57fb78b0d0c65cbc568d6df5bf49172c663f232/work"
            },
            "Name": "overlay2"
        },
        "RootFS": {
            "Type": "layers",
            "Layers": [
                "sha256:e12a619752111d78725b5407bb4e3132816a79c01c252986b2573e16657577e3",
                "sha256:61c2ea3e699ee9e9ccea0ded3608a036f16b6996ebcb4f906cf6e9c74444c838",
                "sha256:6a284a67d93139867cb3d04272746b5353abb5b5ddee8de40cef91b64100ea25",
                "sha256:cecd395a1b5bb4f22b81f6400a8d178c36c041747cf9e01432b3aa35cb4755eb",
                "sha256:287f48dc11cb475c6b759bd9299652a6be72615c15759826101f77c1f64e3904",
                "sha256:a25145bd11ffac3e652661b2e22db3e3c0f1ded94ce293a957d92a5508705d38",
                "sha256:ff4d9a4680b7b91097ceae1a80fbd091f4d2f700a0d9cc0ab154f32db0d73a4b",
                "sha256:d99fe9ee6d3b0917df392d30bf7ba88b25918cbb84ec05e4733945271e32074d",
                "sha256:8b97c7de4131447453c2df26a7a5310c4fb1be83cc951d7b7f4640f8ea6c103c",
                "sha256:53aae6211a670619c9698da1ec894945f0fe941c5a442da0de9526c41538d6c9"
            ]
        },
        "Metadata": {
            "LastTagTime": "0001-01-01T00:00:00Z"
        }
    }
]
[
    {
        "Id": "sha256:fd07c6cdfa46f8e8dfdd25ed5c1d9c8dc7097602cef48a08337cc96779b97f80",
        "RepoTags": [
            "influxdb:latest"
        ],
        "RepoDigests": [
            "influxdb@sha256:af72cf12f80fa603e8fcce5bfe5fa3630ef640c5d94c4f447fd2329608a93e09",
            "influxdb@sha256:c6689db9f46a87b0a3b517e6e3314a5ee191a250cc9b8f2176c820a0198777f7"
        ],
        "Parent": "",
        "Comment": "",
        "Created": "2019-05-08T16:18:06.877208415Z",
        "Container": "95f97a43c818e8b2803cd8af311792f38fdc2cc6cf7932813c2f28516be636e6",
        "ContainerConfig": {
            "Hostname": "95f97a43c818",
            "Domainname": "",
            "User": "",
            "AttachStdin": false,
            "AttachStdout": false,
            "AttachStderr": false,
            "ExposedPorts": {
                "8086/tcp": {}
            },
            "Tty": false,
            "OpenStdin": false,
            "StdinOnce": false,
            "Env": [
                "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                "INFLUXDB_VERSION=1.7.6"
            ],
            "Cmd": [
                "/bin/sh",
                "-c",
                "#(nop) ",
                "CMD [\"influxd\"]"
            ],
            "ArgsEscaped": true,
            "Image": "sha256:63b2c1ce3646cf753b4e1470e63530040dd077949c79c6f8da2e542412f869ab",
            "Volumes": {
                "/var/lib/influxdb": {}
            },
            "WorkingDir": "",
            "Entrypoint": [
                "/entrypoint.sh"
            ],
            "OnBuild": null,
            "Labels": {}
        },
        "DockerVersion": "18.06.1-ce",
        "Author": "",
        "Config": {
            "Hostname": "",
            "Domainname": "",
            "User": "",
            "AttachStdin": false,
            "AttachStdout": false,
            "AttachStderr": false,
            "ExposedPorts": {
                "8086/tcp": {}
            },
            "Tty": false,
            "OpenStdin": false,
            "StdinOnce": false,
            "Env": [
                "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                "INFLUXDB_VERSION=1.7.6"
            ],
            "Cmd": [
                "influxd"
            ],
            "ArgsEscaped": true,
            "Image": "sha256:63b2c1ce3646cf753b4e1470e63530040dd077949c79c6f8da2e542412f869ab",
            "Volumes": {
                "/var/lib/influxdb": {}
            },
            "WorkingDir": "",
            "Entrypoint": [
                "/entrypoint.sh"
            ],
            "OnBuild": null,
            "Labels": null
        },
        "Architecture": "arm",
        "Os": "linux",
        "Size": 220110101,
        "VirtualSize": 220110101,
        "GraphDriver": {
            "Data": {
                "LowerDir":
"/var/lib/docker/overlay2/560d744446b044ed78723bad534e471887bb377f5f3f3ec3d1100b5d306b8796/diff:/var/lib/docker/overlay2/908404ab1256aa7680469f011b8ed3256fefa9c78b2b0605a8983e12e110aede/diff:/var/lib/docker/overlay2/a133a413e13dbc1d0858ba406ec7fac8a080245143540fc85d0160913641b76d/diff:/var/lib/docker/overlay2/e0fc49edecdb43f3ca6ed1c0d23933bd88d7671980ea4e0f5412df809f8b80c8/diff:/var/lib/docker/overlay2/cbb8e1e55f297a5f9ef8fb1e2769fe1875d87f51ae0ddc5e2399b5ba01d28caf/diff:/var/lib/docker/overlay2/948e4f3554a4e700ea0e79517baf5e5250e6282dfc84ec9147bb765f736ff349/diff:/var/lib/docker/overlay2/5e8288b32af0dc7274c667c30aa9cc7e469757b9c3477a77a4b658a70d773c71/diff",
                "MergedDir": "/var/lib/docker/overlay2/fee30263c1d49dbd1c15f62ab2b923c52e742d3f00fd54d68cf0433d5c262984/merged",
                "UpperDir": "/var/lib/docker/overlay2/fee30263c1d49dbd1c15f62ab2b923c52e742d3f00fd54d68cf0433d5c262984/diff",
                "WorkDir": "/var/lib/docker/overlay2/fee30263c1d49dbd1c15f62ab2b923c52e742d3f00fd54d68cf0433d5c262984/work"
            },
            "Name": "overlay2"
        },
        "RootFS": {
            "Type": "layers",
            "Layers": [
                "sha256:21ec535fbc10d61a6261f020debe9cff61d7b1ba1155f813b0658c96edd1a98c",
                "sha256:eb0f450d28b4994f5a1d4a8715e2d656048f8dbde032e970e5a600dd8586c224",
                "sha256:3098ad1698c04c3f6cd081de1414d5e2abef8b20fc35c3012b22af32f260eb50",
                "sha256:b548653ad3e660e3d883fd870b777c1f9b6ba972910acbce5e0c3d9daa39c3b6",
                "sha256:392465b2d0d855739fdc57bbb3aaadec87311e922c296ad261e9d8b13a4e27b4",
                "sha256:a12bea4939fd9867d8fbfbd2ee66265ad2d08e7bf901954ad54e1bbc4f255c0a",
                "sha256:7c79ba49d39c1e6c508d341e6e11bdcf6785eb3d810ee96282b9dbea6d25dec8",
                "sha256:e23cda60e6e1c478117798dbb9786bd9a54987a5a5fed48eff59ad4c34342f84"
            ]
        },
        "Metadata": {
            "LastTagTime": "0001-01-01T00:00:00Z"
        }
    }
]
[
    {
        "Id": "sha256:757dbc028e5acd5abe214e199f30c52f22987fbdca2ce470ce9793c3d1df0544",
        "RepoTags": [
            "brewblox/brewblox-mdns:rpi-edge"
        ],
        "RepoDigests": [
            "brewblox/brewblox-mdns@sha256:dddb9b1b81c5cc6c1c32a66266feb314bb57b0aa69a8eefbc6c67aa65cb3456a"
        ],
        "Parent": "",
        "Comment": "",
        "Created": "2019-05-20T16:18:57.034189779Z",
        "Container": "64bed33cd5b3c31bc0567b6c925c15928197b888f9e8f797ad92541dbf9e96e9",
        "ContainerConfig": {
            "Hostname": "64bed33cd5b3",
            "Domainname": "",
            "User": "",
            "AttachStdin": false,
            "AttachStdout": false,
            "AttachStderr": false,
            "ExposedPorts": {
                "5000/tcp": {}
            },
            "Tty": false,
            "OpenStdin": false,
            "StdinOnce": false,
            "Env": [
                "PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                "LANG=C.UTF-8",
                "GPG_KEY=0D96DF4D4110E5C43FBFB17F2D347EA6AA65421D",
                "PYTHON_VERSION=3.7.3",
                "PYTHON_PIP_VERSION=19.0.3",
                "SERVICE_INFO=0.2.1-21-g099c6b3 @ Mon May 20 16:15:39 UTC 2019"
            ],
            "Cmd": [
                "/bin/sh",
                "-c",
                "#(nop) ",
                "ENTRYPOINT [\"python3\" \"-m\" \"brewblox_mdns\"]"
            ],
            "ArgsEscaped": true,
            "Image": "sha256:ffd0949a4099198a7ddfdd925aa70cc9054a942f2bb3d3bbde4f7f7ec8ad45a9",
            "Volumes": null,
            "WorkingDir": "/app",
            "Entrypoint": [
                "python3",
                "-m",
                "brewblox_mdns"
            ],
            "OnBuild": null,
            "Labels": {}
        },
        "DockerVersion": "3.0.4",
        "Author": "",
        "Config": {
            "Hostname": "",
            "Domainname": "",
            "User": "",
            "AttachStdin": false,
            "AttachStdout": false,
            "AttachStderr": false,
            "ExposedPorts": {
                "5000/tcp": {}
            },
            "Tty": false,
            "OpenStdin": false,
            "StdinOnce": false,
            "Env": [
                "PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                "LANG=C.UTF-8",
                "GPG_KEY=0D96DF4D4110E5C43FBFB17F2D347EA6AA65421D",
                "PYTHON_VERSION=3.7.3",
                "PYTHON_PIP_VERSION=19.0.3",
                "SERVICE_INFO=0.2.1-21-g099c6b3 @ Mon May 20 16:15:39 UTC 2019"
            ],
            "Cmd": null,
            "ArgsEscaped": true,
            "Image": "sha256:ffd0949a4099198a7ddfdd925aa70cc9054a942f2bb3d3bbde4f7f7ec8ad45a9",
            "Volumes": null,
            "WorkingDir": "/app",
            "Entrypoint": [
                "python3",
                "-m",
                "brewblox_mdns"
            ],
            "OnBuild": null,
            "Labels": null
        },
        "Architecture": "arm",
        "Os": "linux",
        "Size": 136469388,
        "VirtualSize": 136469388,
        "GraphDriver": {
            "Data": {
                "LowerDir": "/var/lib/docker/overlay2/6c8cdbe9354f3cc042cba48557492fc63c61f6fc6ecc9fc08da8454ce3533690/diff:/var/lib/docker/overlay2/c5c9666075f0b926268db6c91a87b6058ace9a7e26c77342b7777bbf7e257751/diff:/var/lib/docker/overlay2/99fcb3163bfec367fca9340189ed20c7bb4321ee76730772bd899d4d9a75b467/diff:/var/lib/docker/overlay2/91ab733a6468456c4483393536d0ed579fee9e9427b56794827e74ed81aff349/diff:/var/lib/docker/overlay2/808205e742e5779afff51f6d71957fc061cecbaeec208e6b2c2d6f0ae68cdc00/diff:/var/lib/docker/overlay2/c4e9bb6be54afaefa5231272564be2d81ff93457c8e411aa0d65d0c894708c74/diff:/var/lib/docker/overlay2/5f846d69077c577812354a8d10676684d127d96f637be89dfc1e2a5fb16b874c/diff:/var/lib/docker/overlay2/34edf1f9edd4e637459595d7bd33721fd40ee98754d7aad1773466e99db0a5b5/diff:/var/lib/docker/overlay2/b2d11c563a664e42797b56e6bc8eaa1edc25d19d6ac5498b34eeb1e58f7c36f8/diff",
                "MergedDir": "/var/lib/docker/overlay2/0a8ced428b0955eb2c99dd64a8a27eaaeefd218343685ccd90206e3d53e5cc51/merged",
                "UpperDir": "/var/lib/docker/overlay2/0a8ced428b0955eb2c99dd64a8a27eaaeefd218343685ccd90206e3d53e5cc51/diff",
                "WorkDir": "/var/lib/docker/overlay2/0a8ced428b0955eb2c99dd64a8a27eaaeefd218343685ccd90206e3d53e5cc51/work"
            },
            "Name": "overlay2"
        },
        "RootFS": {
            "Type": "layers",
            "Layers": [
                "sha256:e12a619752111d78725b5407bb4e3132816a79c01c252986b2573e16657577e3",
                "sha256:61c2ea3e699ee9e9ccea0ded3608a036f16b6996ebcb4f906cf6e9c74444c838",
                "sha256:6a284a67d93139867cb3d04272746b5353abb5b5ddee8de40cef91b64100ea25",
                "sha256:cecd395a1b5bb4f22b81f6400a8d178c36c041747cf9e01432b3aa35cb4755eb",
                "sha256:287f48dc11cb475c6b759bd9299652a6be72615c15759826101f77c1f64e3904",
                "sha256:a25145bd11ffac3e652661b2e22db3e3c0f1ded94ce293a957d92a5508705d38",
                "sha256:48f106f0e4230d21711e44489a55478786f9765dd44d94f251188ed3589d8e9c",
                "sha256:0cc048901b2997721dc83e10dd0f1d8f3a3165f606736c8d101b97e42862260c",
                "sha256:c207a2caca9ff8115246b86bd606a9153d4e2e96c9a94bb992b0f1ceabab8c85",
                "sha256:ee367d340f889f83d5eae4bfa7e3b88bd142f298d90c7f9c2e5da77c38dfb4fb"
            ]
        },
        "Metadata": {
            "LastTagTime": "0001-01-01T00:00:00Z"
        }
    }
]
[
    {
        "Id": "sha256:a936d722302871534692664ebecda6897cfe7824592f4031077bcb9e706e3bd5",
        "RepoTags": [
            "brewblox/brewblox-devcon-spark:rpi-edge"
        ],
        "RepoDigests": [
            "brewblox/brewblox-devcon-spark@sha256:959c26b20059ae8f575f3033ee79e3cd8d4e5af616848b4bc702459678bf2d02"
        ],
        "Parent": "",
        "Comment": "",
        "Created": "2019-06-04T16:38:16.518704565Z",
        "Container": "c8003d8248b311dccf26775abb4ca7446aa1438cfb30d2c67d2dc14fe3b00511",
        "ContainerConfig": {
            "Hostname": "c8003d8248b3",
            "Domainname": "",
            "User": "",
            "AttachStdin": false,
            "AttachStdout": false,
            "AttachStderr": false,
            "ExposedPorts": {
                "5000/tcp": {}
            },
            "Tty": false,
            "OpenStdin": false,
            "StdinOnce": false,
            "Env": [
                "PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                "LANG=C.UTF-8",
                "GPG_KEY=0D96DF4D4110E5C43FBFB17F2D347EA6AA65421D",
                "PYTHON_VERSION=3.7.3",
                "PYTHON_PIP_VERSION=19.0.3",
                "SERVICE_INFO=0.5.2-74-gc79698f @ Tue Jun  4 16:35:21 UTC 2019"
            ],
            "Cmd": [
                "/bin/sh",
                "-c",
                "#(nop) ",
                "ENTRYPOINT [\"python3\" \"-m\" \"brewblox_devcon_spark\"]"
            ],
            "Image": "sha256:180a095de8bf5e1ddb49908105c184b496840072bd2b731a573ebdf86d73eb11",
            "Volumes": null,
            "WorkingDir": "/app",
            "Entrypoint": [
                "python3",
                "-m",
                "brewblox_devcon_spark"
            ],
            "OnBuild": null,
            "Labels": {}
        },
        "DockerVersion": "3.0.5",
        "Author": "",
        "Config": {
            "Hostname": "",
            "Domainname": "",
            "User": "",
            "AttachStdin": false,
            "AttachStdout": false,
            "AttachStderr": false,
            "ExposedPorts": {
                "5000/tcp": {}
            },
            "Tty": false,
            "OpenStdin": false,
            "StdinOnce": false,
            "Env": [
                "PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                "LANG=C.UTF-8",
                "GPG_KEY=0D96DF4D4110E5C43FBFB17F2D347EA6AA65421D",
                "PYTHON_VERSION=3.7.3",
                "PYTHON_PIP_VERSION=19.0.3",
                "SERVICE_INFO=0.5.2-74-gc79698f @ Tue Jun  4 16:35:21 UTC 2019"
            ],
            "Cmd": null,
            "Image": "sha256:180a095de8bf5e1ddb49908105c184b496840072bd2b731a573ebdf86d73eb11",
            "Volumes": null,
            "WorkingDir": "/app",
            "Entrypoint": [
                "python3",
                "-m",
                "brewblox_devcon_spark"
            ],
            "OnBuild": null,
            "Labels": null
        },
        "Architecture": "arm",
        "Os": "linux",
        "Size": 144715745,
        "VirtualSize": 144715745,
        "GraphDriver": {
            "Data": {
                "LowerDir": "/var/lib/docker/overlay2/9524b754894ecee5037fb220dfa5bff5a46de2019b06a41c7acf71ef37e155dc/diff:/var/lib/docker/overlay2/f43975e6a41c6e8ea636ff7243b1a014a8ea2f449141d07b23162731c96c49e6/diff:/var/lib/docker/overlay2/55edb6a6108c150e4095d6d2d1896192507e3909e1882ebf54d4c0925677364f/diff:/var/lib/docker/overlay2/91ab733a6468456c4483393536d0ed579fee9e9427b56794827e74ed81aff349/diff:/var/lib/docker/overlay2/808205e742e5779afff51f6d71957fc061cecbaeec208e6b2c2d6f0ae68cdc00/diff:/var/lib/docker/overlay2/c4e9bb6be54afaefa5231272564be2d81ff93457c8e411aa0d65d0c894708c74/diff:/var/lib/docker/overlay2/5f846d69077c577812354a8d10676684d127d96f637be89dfc1e2a5fb16b874c/diff:/var/lib/docker/overlay2/34edf1f9edd4e637459595d7bd33721fd40ee98754d7aad1773466e99db0a5b5/diff:/var/lib/docker/overlay2/b2d11c563a664e42797b56e6bc8eaa1edc25d19d6ac5498b34eeb1e58f7c36f8/diff",
                "MergedDir": "/var/lib/docker/overlay2/ec478e58791401e6d9c380250949ed3df8c0eb55b466416768765440109e1ed8/merged",
                "UpperDir": "/var/lib/docker/overlay2/ec478e58791401e6d9c380250949ed3df8c0eb55b466416768765440109e1ed8/diff",
                "WorkDir": "/var/lib/docker/overlay2/ec478e58791401e6d9c380250949ed3df8c0eb55b466416768765440109e1ed8/work"
            },
            "Name": "overlay2"
        },
        "RootFS": {
            "Type": "layers",
            "Layers": [
                "sha256:e12a619752111d78725b5407bb4e3132816a79c01c252986b2573e16657577e3",
                "sha256:61c2ea3e699ee9e9ccea0ded3608a036f16b6996ebcb4f906cf6e9c74444c838",
                "sha256:6a284a67d93139867cb3d04272746b5353abb5b5ddee8de40cef91b64100ea25",
                "sha256:cecd395a1b5bb4f22b81f6400a8d178c36c041747cf9e01432b3aa35cb4755eb",
                "sha256:287f48dc11cb475c6b759bd9299652a6be72615c15759826101f77c1f64e3904",
                "sha256:a25145bd11ffac3e652661b2e22db3e3c0f1ded94ce293a957d92a5508705d38",
                "sha256:5a63662eb85893a02a2d8595dad07f8ced8ba78d830ccbcea85bc85ff4d6af57",
                "sha256:aa80586404851d48d841cc9258c7deda38bdadeaccd6debb764f2b72acf01713",
                "sha256:6d20eaa6aabb1f1873f24a1b783f8ab899ca39d67d64570ceaa17025fbd05eaf",
                "sha256:49e4f294a9ebce6726b95a0ba82af5177968a9248112f98d7c5964e62f554292"
            ]
        },
        "Metadata": {
            "LastTagTime": "0001-01-01T00:00:00Z"
        }
    }
]
[
    {
        "Id": "sha256:a0fc65eddfcc8918973eb1ad17b41c14af01a4ab1df47a7b9b308f39a54a2030",
        "RepoTags": [
            "traefik:latest"
        ],
        "RepoDigests": [
            "traefik@sha256:02cfdb77b0cd82d973dffb3dafe498283f82399bd75b335797d7f0fe3ebeccb8"
        ],
        "Parent": "",
        "Comment": "",
        "Created": "2019-05-29T22:50:01.933067266Z",
        "Container": "754825592ec57493d20f638b95ac36d713f84b230aecbe3f35101bd2c320f780",
        "ContainerConfig": {
            "Hostname": "754825592ec5",
            "Domainname": "",
            "User": "",
            "AttachStdin": false,
            "AttachStdout": false,
            "AttachStderr": false,
            "ExposedPorts": {
                "80/tcp": {}
            },
            "Tty": false,
            "OpenStdin": false,
            "StdinOnce": false,
            "Env": [
                "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
            ],
            "Cmd": [
                "/bin/sh",
                "-c",
                "#(nop) ",
                "LABEL org.opencontainers.image.vendor=Containous org.opencontainers.image.url=https://traefik.io org.opencontainers.image.title=Traefik org.opencontainers.image.description=A modern reverse-proxy org.opencontainers.image.version=v1.7.12 org.opencontainers.image.documentation=https://docs.traefik.io"
            ],
            "Image": "sha256:250712acbb1c05a3e032ca7e256f918f24878eaf0d024dc154039994cf82105a",
            "Volumes": {
                "/tmp": {}
            },
            "WorkingDir": "",
            "Entrypoint": [
                "/traefik"
            ],
            "OnBuild": null,
            "Labels": {
                "org.opencontainers.image.description": "A modern reverse-proxy",
                "org.opencontainers.image.documentation": "https://docs.traefik.io",
                "org.opencontainers.image.title": "Traefik",
                "org.opencontainers.image.url": "https://traefik.io",
                "org.opencontainers.image.vendor": "Containous",
                "org.opencontainers.image.version": "v1.7.12"
            }
        },
        "DockerVersion": "18.06.1-ce",
        "Author": "",
        "Config": {
            "Hostname": "",
            "Domainname": "",
            "User": "",
            "AttachStdin": false,
            "AttachStdout": false,
            "AttachStderr": false,
            "ExposedPorts": {
                "80/tcp": {}
            },
            "Tty": false,
            "OpenStdin": false,
            "StdinOnce": false,
            "Env": [
                "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
            ],
            "Cmd": null,
            "Image": "sha256:250712acbb1c05a3e032ca7e256f918f24878eaf0d024dc154039994cf82105a",
            "Volumes": {
                "/tmp": {}
            },
            "WorkingDir": "",
            "Entrypoint": [
                "/traefik"
            ],
            "OnBuild": null,
            "Labels": {
                "org.opencontainers.image.description": "A modern reverse-proxy",
                "org.opencontainers.image.documentation": "https://docs.traefik.io",
                "org.opencontainers.image.title": "Traefik",
                "org.opencontainers.image.url": "https://traefik.io",
                "org.opencontainers.image.vendor": "Containous",
                "org.opencontainers.image.version": "v1.7.12"
            }
        },
        "Architecture": "arm",
        "Os": "linux",
        "Size": 61094662,
        "VirtualSize": 61094662,
        "GraphDriver": {
            "Data": {
                "LowerDir": "/var/lib/docker/overlay2/0fe7c252b53a478314a02ac0a97bc4a9ceb17922198feb5b0f7d98ea654e7409/diff",
                "MergedDir": "/var/lib/docker/overlay2/3fede2e0ed5f21370552298a42dce0235cef51a38e9c05a69e0e2daffb5005a0/merged",
                "UpperDir": "/var/lib/docker/overlay2/3fede2e0ed5f21370552298a42dce0235cef51a38e9c05a69e0e2daffb5005a0/diff",
                "WorkDir": "/var/lib/docker/overlay2/3fede2e0ed5f21370552298a42dce0235cef51a38e9c05a69e0e2daffb5005a0/work"
            },
            "Name": "overlay2"
        },
        "RootFS": {
            "Type": "layers",
            "Layers": [
                "sha256:782912dba68a8f468adeef1750455e0d1916cec18b8fbe3285ea346d4d23ceb2",
                "sha256:9601876c9f129f7ece9504692dbde62162cf7b072c358f0242a5ea05f74a26b1"
            ]
        },
        "Metadata": {
            "LastTagTime": "0001-01-01T00:00:00Z"
        }
    }
]
[
    {
        "Id": "sha256:e9196f437b1f681886bb25c78c276c044a39b5f50a61e55b74d0caf5e49225d9",
        "RepoTags": [
            "brewblox/brewblox-ui:rpi-edge"
        ],
        "RepoDigests": [
            "brewblox/brewblox-ui@sha256:153cd046032a53cd913f870758d86b54f0d361fdd896c14067e5a38d2d4e7cf5"
        ],
        "Parent": "",
        "Comment": "",
        "Created": "2019-06-04T16:38:52.000164877Z",
        "Container": "",
        "ContainerConfig": {
            "Hostname": "",
            "Domainname": "",
            "User": "",
            "AttachStdin": false,
            "AttachStdout": false,
            "AttachStderr": false,
            "ExposedPorts": {
                "80/tcp": {}
            },
            "Tty": false,
            "OpenStdin": false,
            "StdinOnce": false,
            "Env": [
                "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                "NGINX_VERSION=1.15.12-1~stretch",
                "NJS_VERSION=1.15.12.0.3.1-1~stretch"
            ],
            "Cmd": [
                "/bin/sh",
                "-c",
                "#(nop) COPY file:64721ec8047db734c254661fac9395101d76ff1005ac921854452b070c2834fd in /etc/nginx/conf.d/ "
            ],
            "ArgsEscaped": true,
            "Image": "sha256:49fe04c88188b90acfc9de3e5beb001df57345bcd9f70b0383620e256321241f",
            "Volumes": null,
            "WorkingDir": "",
            "Entrypoint": null,
            "OnBuild": null,
            "Labels": {
                "maintainer": "NGINX Docker Maintainers <docker-maint@nginx.com>"
            },
            "StopSignal": "SIGTERM"
        },
        "DockerVersion": "3.0.5",
        "Author": "",
        "Config": {
            "Hostname": "",
            "Domainname": "",
            "User": "",
            "AttachStdin": false,
            "AttachStdout": false,
            "AttachStderr": false,
            "ExposedPorts": {
                "80/tcp": {}
            },
            "Tty": false,
            "OpenStdin": false,
            "StdinOnce": false,
            "Env": [
                "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                "NGINX_VERSION=1.15.12-1~stretch",
                "NJS_VERSION=1.15.12.0.3.1-1~stretch"
            ],
            "Cmd": [
                "nginx",
                "-g",
                "daemon off;"
            ],
            "ArgsEscaped": true,
            "Image": "sha256:49fe04c88188b90acfc9de3e5beb001df57345bcd9f70b0383620e256321241f",
            "Volumes": null,
            "WorkingDir": "",
            "Entrypoint": null,
            "OnBuild": null,
            "Labels": {
                "maintainer": "NGINX Docker Maintainers <docker-maint@nginx.com>"
            },
            "StopSignal": "SIGTERM"
        },
        "Architecture": "arm",
        "Os": "linux",
        "Size": 116673702,
        "VirtualSize": 116673702,
        "GraphDriver": {
            "Data": {
                "LowerDir": "/var/lib/docker/overlay2/9bf9179708bfe6606fdc581c11b744f499642de6480fe6f1f966328c0809692c/diff:/var/lib/docker/overlay2/e544b28956186cae40c801862f1046b375fe936a17a413464b428782f6f21dae/diff:/var/lib/docker/overlay2/c31d597f3b362074cdbdc4f900e516cd14c6eff75c5d3ffaf8f69a38e6fd07be/diff:/var/lib/docker/overlay2/714a7d767c9cfd0ccf968546ebc31e66b63c061dc06d13450f4a76c56f7f0d20/diff",
                "MergedDir": "/var/lib/docker/overlay2/52d4096b978d005d5481258913776ff897360ba411a3f208e1e1405dd7b47c19/merged",
                "UpperDir": "/var/lib/docker/overlay2/52d4096b978d005d5481258913776ff897360ba411a3f208e1e1405dd7b47c19/diff",
                "WorkDir": "/var/lib/docker/overlay2/52d4096b978d005d5481258913776ff897360ba411a3f208e1e1405dd7b47c19/work"
            },
            "Name": "overlay2"
        },
        "RootFS": {
            "Type": "layers",
            "Layers": [
                "sha256:6778653dccca3785809fd33bc7daf9ce79f781f4ae7d51e12d1ba668b2069f59",
                "sha256:70f07b48c3f1f69a8b83848a904b702f084bb3d7bd3ecb0ee81e741137cb2d7d",
                "sha256:030bfd2d2f85a54de279a0df79b411027f7514dad33165fa3129754c752728e8",
                "sha256:acf7c6e56e1f53c24c107c7b7dcfc57b2c0e2cd58268a5407691ed51ddbe81d1",
                "sha256:291c95816e4a141bcda7cad1be2dfe713d8d1abcd3133460f35c87ab81f58558"
            ]
        },
        "Metadata": {
            "LastTagTime": "0001-01-01T00:00:00Z"
        }
    }
]

Thanks for the info, but I’m afraid you did cut out the most relevant bits.

From what’s left, it looks like you may have gotten a wrong docker image. Please try running brewblox-ctl update, and see if the problem persists.

brewblox-ctl log automatically uploads the results to Termbin, and gives you the URL. You can post that URL here.

Hi
I hope this is the right link…

https://termbin.com/fgaj

Running the update command it seems from what i can understand to fail when it gets to the spark…

Bjørn

Fail how? What error message does it give you?

It seems to abort

pi@raspberrypi:~/brewblox $ brewblox-ctl update
Do you want to update your Spark controller firmware? [Y/n]
Y
The following shell commands will be used:

     docker-compose down
     docker-compose pull
     sudo /usr/bin/python3 -m pip install -U brewblox-ctl
     docker rm ctl-lib 2> /dev/null || true
     docker pull brewblox/brewblox-ctl-lib:rpi-edge || true
     docker create --name ctl-lib brewblox/brewblox-ctl-lib:rpi-edge
     rm -rf ./brewblox_ctl_lib 2> /dev/null || true
     docker cp ctl-lib:/brewblox_ctl_lib ./
     docker rm ctl-lib
     /usr/bin/python3 -m brewblox_ctl flash
     /usr/bin/python3 -m brewblox_ctl migrate

Press ENTER to continue, Ctrl+C to cancel

Running command:
docker-compose down

Stopping brewblox_datastore_1 … done
Stopping brewblox_eventbus_1 … done
Removing brewblox_history_1 … done
Removing brewblox_spark-one_1 … done
Removing brewblox_ui_1 … done
Removing brewblox_traefik_1 … done
Removing brewblox_datastore_1 … done
Removing brewblox_mdns_1 … done
Removing brewblox_influx_1 … done
Removing brewblox_eventbus_1 … done
Removing network brewblox_default

Running command:
docker-compose pull

Pulling mdns … done
Pulling traefik … done
Pulling influx … done
Pulling ui … done
Pulling eventbus … done
Pulling history … done
Pulling datastore … done
Pulling spark-one … done

Running command:
sudo /usr/bin/python3 -m pip install -U brewblox-ctl

Requirement already up-to-date: brewblox-ctl in /usr/local/lib/python3.5/dist-packages
Requirement already up-to-date: click in /usr/local/lib/python3.5/dist-packages (from brewblox-ctl)
Requirement already up-to-date: python-dotenv[cli] in /usr/local/lib/python3.5/dist-packages (from brewblox-ctl)
Requirement already up-to-date: requests in /usr/local/lib/python3.5/dist-packages (from brewblox-ctl)
Requirement already up-to-date: urllib3!=1.25.0,!=1.25.1,<1.26,>=1.21.1 in /usr/local/lib/python3.5/dist-packages (from requests->brewblox-ctl)
Requirement already up-to-date: certifi>=2017.4.17 in /usr/local/lib/python3.5/dist-packages (from requests->brewblox-ctl)
Requirement already up-to-date: idna<2.9,>=2.5 in /usr/local/lib/python3.5/dist-packages (from requests->brewblox-ctl)
Requirement already up-to-date: chardet<3.1.0,>=3.0.2 in /usr/local/lib/python3.5/dist-packages (from requests->brewblox-ctl)

Running command:
docker rm ctl-lib 2> /dev/null || true

Running command:
docker pull brewblox/brewblox-ctl-lib:rpi-edge || true

rpi-edge: Pulling from brewblox/brewblox-ctl-lib
Digest: sha256:08514409858876d65ae573aa34168d52f76e2be9a8c3ada247aa7e02f2f0bfac
Status: Image is up to date for brewblox/brewblox-ctl-lib:rpi-edge

Running command:
docker create --name ctl-lib brewblox/brewblox-ctl-lib:rpi-edge

762c1320e3a2865928c6cefeae68cdaad7a35fd6efefb9f6f11b5e55564035c2

Running command:
rm -rf ./brewblox_ctl_lib 2> /dev/null || true

Running command:
docker cp ctl-lib:/brewblox_ctl_lib ./

Running command:
docker rm ctl-lib

ctl-lib

Running command:
/usr/bin/python3 -m brewblox_ctl flash

Please press ENTER when your Spark is connected over USB
The following shell commands will be used:

     docker-compose down
     docker pull brewblox/firmware-flasher:rpi-edge
     docker run -it --rm --privileged brewblox/firmware-flasher:rpi-edge trigger-dfu
     docker run -it --rm --privileged brewblox/firmware-flasher:rpi-edge flash

Press ENTER to continue, Ctrl+C to cancel

Running command:
docker-compose down

Removing network brewblox_default
WARNING: Network brewblox_default not found.

Running command:
docker pull brewblox/firmware-flasher:rpi-edge

rpi-edge: Pulling from brewblox/firmware-flasher
Digest: sha256:48c3249f92746dc195dc3f5c09222735ec5c24b1724af1f227cb4aba9ecaf7c6
Status: Image is up to date for brewblox/firmware-flasher:rpi-edge

Running command:
docker run -it --rm --privileged brewblox/firmware-flasher:rpi-edge trigger-dfu

Traceback (most recent call last):
File “/usr/lib/python3.5/runpy.py”, line 193, in _run_module_as_main
main”, mod_spec)
File “/usr/lib/python3.5/runpy.py”, line 85, in _run_code
exec(code, run_globals)
File “/usr/local/lib/python3.5/dist-packages/brewblox_ctl/main.py”, line 85, in
main()
File “/usr/local/lib/python3.5/dist-packages/brewblox_ctl/main.py”, line 81, in main
cli()
File “/usr/local/lib/python3.5/dist-packages/click/core.py”, line 764, in call
return self.main(*args, **kwargs)
File “/usr/local/lib/python3.5/dist-packages/click/core.py”, line 717, in main
rv = self.invoke(ctx)
File “/usr/local/lib/python3.5/dist-packages/click/core.py”, line 1137, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File “/usr/local/lib/python3.5/dist-packages/click/core.py”, line 956, in invoke
return ctx.invoke(self.callback, **ctx.params)
File “/usr/local/lib/python3.5/dist-packages/click/core.py”, line 555, in invoke
return callback(*args, **kwargs)
File “/usr/local/lib/python3.5/dist-packages/brewblox_ctl/commands.py”, line 147, in flash
utils.run_all(shell_commands)
File “/usr/local/lib/python3.5/dist-packages/brewblox_ctl/utils.py”, line 130, in run_all
return [run(cmd) for cmd in shell_cmds]
File “/usr/local/lib/python3.5/dist-packages/brewblox_ctl/utils.py”, line 130, in
return [run(cmd) for cmd in shell_cmds]
File “/usr/local/lib/python3.5/dist-packages/brewblox_ctl/utils.py”, line 124, in run
return check_call(shell_cmd, shell=True, stderr=STDOUT)
File “/usr/lib/python3.5/subprocess.py”, line 271, in check_call
raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command ‘docker run -it --rm --privileged brewblox/firmware-flasher:rpi-edge trigger-dfu’ returned non-zero exit status 139
Traceback (most recent call last):
File “/usr/local/bin/brewblox-ctl”, line 11, in
sys.exit(main())
File “/usr/local/lib/python3.5/dist-packages/brewblox_ctl/main.py”, line 81, in main
cli()
File “/usr/local/lib/python3.5/dist-packages/click/core.py”, line 764, in call
return self.main(*args, **kwargs)
File “/usr/local/lib/python3.5/dist-packages/click/core.py”, line 717, in main
rv = self.invoke(ctx)
File “/usr/local/lib/python3.5/dist-packages/click/core.py”, line 1137, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File “/usr/local/lib/python3.5/dist-packages/click/core.py”, line 956, in invoke
return ctx.invoke(self.callback, **ctx.params)
File “/usr/local/lib/python3.5/dist-packages/click/core.py”, line 555, in invoke
return callback(*args, **kwargs)
File “/home/pi/brewblox/brewblox_ctl_lib/commands.py”, line 74, in update
utils.run_all(shell_commands)
File “/usr/local/lib/python3.5/dist-packages/brewblox_ctl/utils.py”, line 130, in run_all
return [run(cmd) for cmd in shell_cmds]
File “/usr/local/lib/python3.5/dist-packages/brewblox_ctl/utils.py”, line 130, in
return [run(cmd) for cmd in shell_cmds]
File “/usr/local/lib/python3.5/dist-packages/brewblox_ctl/utils.py”, line 124, in run
return check_call(shell_cmd, shell=True, stderr=STDOUT)
File “/usr/lib/python3.5/subprocess.py”, line 271, in check_call
raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command ‘/usr/bin/python3 -m brewblox_ctl flash’ returned non-zero exit status 1

Looks like it fails to ready the controller for flashing. What color is the Spark LED? It may help if you unplug and reconnect the Spark, and then rerun brewblox-ctl flash