Problem with installing Brewblox

Hey all

Hope you can help me out. I’m a n00b when it comes to raspberry pi and I’m having some issues when trying to install Brewblox
I have completed Step 1 and 2. - Micro sd is formatted in fat 32, 120 gb, Raspberry pi os lite has been installed and setup in the advanced options as per the guide. I have also tried updating the raspberry os to the newest version with sudo apt full-upgrade. I used Fing to find the Raspberry IP and both Windows terminal and Putty SSH clients which both seem to work fine. However, after running the 2 first commands in step 3 “Install brewblox” i get the below message when trying to install “brewblox-ctl”

“pi@raspberrypi:~ $ brewblox-ctl install”
“-bash: brewblox-ctl: command not found”

I have tried several reformats with a new installation but to no avail. Seems to me the file brewblox-ctl is missing and i have tried to search for it with “sudo find /” but cannot seem to locate it. Hope someone might shed some light as to what I’m doing wrong :slight_smile: I have searched the forum but cannot find any other posts regarding this problem

I’m also trying to do a clean install and having a problem.

I run: pip3 install --user setuptools brewblox-ctl
The only warnings are:
The script dotenv is installed in ‘/home/pi/.local/bin’ which is not on PATH.
Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
The script distro is installed in ‘/home/pi/.local/bin’ which is not on PATH.
Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
The script jsonschema is installed in ‘/home/pi/.local/bin’ which is not on PATH.
Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
The script docker-compose is installed in ‘/home/pi/.local/bin’ which is not on PATH.
Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
The script brewblox-ctl is installed in ‘/home/pi/.local/bin’ which is not on PATH.
Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.

I then run: brewblox-ctl install
Everything looks fine until the end:
touch: cannot touch ‘/home/pi//home/pi/brewblox/.env’: No such file or directory

Command ‘touch /home/pi/"/home/pi/brewblox"/.env’ returned non-zero exit status 1.

I then change to the brewblox directory (which is empty) and run: brewblox-ctl setup
Resulting in this:
pi@raspberrypi:~/brewblox $ brewblox-ctl setup

Usage: brewblox-ctl [OPTIONS] COMMAND [ARGS]…

Try ‘brewblox-ctl --help’ for help.

Error: No such command ‘setup’.

Many commands only work if your current directory is a Brewblox directory.

I’ll check back later to see if anyone else is having issues.

Hey

Seems my problem is close to one RichardV has Got a step further in the process but now im getting as below when I install " pip3 install --user setuptools brewblox-ctl"

docker-compose 1.29.2 has requirement websocket-client<1,>=0.32.0, but you'll ha    ve websocket-client 1.0.1 which is incompatible.
Installing collected packages: click, ifaddr, zeroconf, websocket-client, reques    ts, docker, docopt, cached-property, python-dotenv, typing-extensions, zipp, imp    ortlib-metadata, attrs, pyrsistent, jsonschema, dockerpty, distro, PyYAML, textt    able, docker-compose, configobj, brewblox-ctl
  The script dotenv is installed in '/home/pi/.local/bin' which is not on PATH.
  Consider adding this directory to PATH or, if you prefer to suppress this warn    ing, use --no-warn-script-location.
  The script jsonschema is installed in '/home/pi/.local/bin' which is not on PA    TH.
  Consider adding this directory to PATH or, if you prefer to suppress this warn    ing, use --no-warn-script-location.
  The script distro is installed in '/home/pi/.local/bin' which is not on PATH.
  Consider adding this directory to PATH or, if you prefer to suppress this warn    ing, use --no-warn-script-location.
  The script docker-compose is installed in '/home/pi/.local/bin' which is not o    n PATH.  Consider adding this directory to PATH or, if you prefer to suppress this warn    ing, use --no-warn-script-location.
  The script brewblox-ctl is installed in '/home/pi/.local/bin' which is not on     PATH.
  Consider adding this directory to PATH or, if you prefer to suppress this warn    ing, use --no-warn-script-location.

Have you ran the first two code blocks in step 3? The first sets SSH settings, the second installs brewblox-ctl itself.

If you’re unsure, you can safely re-run them.

Yes I have but will try again

Ran the first code blocks again. This time Im getting a similar error as RichardV I believe

Ipi@raspberrypi:~ $ sudo apt update
Hit:1 https://download.docker.com/linux/raspbian buster InRelease
Hit:2 http://raspbian.raspberrypi.org/raspbian buster InRelease
Hit:3 http://archive.raspberrypi.org/debian buster InRelease
Reading package lists… Done
Building dependency tree
Reading state information… Done
All packages are up to date.
pi@raspberrypi:~ $ sudo apt upgrade -y
Reading package lists… Done
Building dependency tree
Reading state information… Done
Calculating upgrade… Done
The following package was automatically installed and is no longer required:
python-colorzero
Use ‘sudo apt autoremove’ to remove it.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
pi@raspberrypi:~ $ sudo apt install -y python3-pip
Reading package lists… Done
Building dependency tree
Reading state information… Done
python3-pip is already the newest version (18.1-5+rpt1).
The following package was automatically installed and is no longer required:
python-colorzero
Use ‘sudo apt autoremove’ to remove it.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
pi@raspberrypi:~ $ pip3 install --user setuptools brewblox-ctl
Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
Requirement already satisfied: setuptools in /usr/lib/python3/dist-packages (40. 8.0)
Requirement already satisfied: brewblox-ctl in ./.local/lib/python3.7/site-packa ges (0.25.1)
Requirement already satisfied: docker<6.0.0,>=5.0.0 in ./.local/lib/python3.7/si te-packages (from brewblox-ctl) (5.0.0)
Requirement already satisfied: click<8.0.0,>=7.1.2 in ./.local/lib/python3.7/sit e-packages (from brewblox-ctl) (7.1.2)
Requirement already satisfied: python-dotenv[cli]<0.14.0,>=0.13.0 in ./.local/li b/python3.7/site-packages (from brewblox-ctl) (0.13.0)
Requirement already satisfied: requests<3.0.0,>=2.25.1 in ./.local/lib/python3.7 /site-packages (from brewblox-ctl) (2.25.1)
Requirement already satisfied: docker-compose<2.0.0,>=1.29.0 in ./.local/lib/pyt hon3.7/site-packages (from brewblox-ctl) (1.29.2)
Requirement already satisfied: PyYAML<6.0.0,>=5.4.1 in ./.local/lib/python3.7/si te-packages (from brewblox-ctl) (5.4.1)
Requirement already satisfied: zeroconf<0.29.0,>=0.28.8 in ./.local/lib/python3. 7/site-packages (from brewblox-ctl) (0.28.8)
Requirement already satisfied: configobj<6.0.0,>=5.0.6 in ./.local/lib/python3.7 /site-packages (from brewblox-ctl) (5.0.6)
Requirement already satisfied: websocket-client>=0.32.0 in ./.local/lib/python3. 7/site-packages (from docker<6.0.0,>=5.0.0->brewblox-ctl) (1.0.1)
Requirement already satisfied: urllib3<1.27,>=1.21.1 in /usr/lib/python3/dist-pa ckages (from requests<3.0.0,>=2.25.1->brewblox-ctl) (1.24.1)
Requirement already satisfied: certifi>=2017.4.17 in /usr/lib/python3/dist-packa ges (from requests<3.0.0,>=2.25.1->brewblox-ctl) (2018.8.24)
Requirement already satisfied: idna<3,>=2.5 in /usr/lib/python3/dist-packages (f rom requests<3.0.0,>=2.25.1->brewblox-ctl) (2.6)
Requirement already satisfied: chardet<5,>=3.0.2 in /usr/lib/python3/dist-packag es (from requests<3.0.0,>=2.25.1->brewblox-ctl) (3.0.4)
Requirement already satisfied: cached-property<2,>=1.2.0; python_version < “3.8” in ./.local/lib/python3.7/site-packages (from docker-compose<2.0.0,>=1.29.0->br ewblox-ctl) (1.5.2)
Requirement already satisfied: jsonschema<4,>=2.5.1 in ./.local/lib/python3.7/si te-packages (from docker-compose<2.0.0,>=1.29.0->brewblox-ctl) (3.2.0)
Requirement already satisfied: texttable<2,>=0.9.0 in ./.local/lib/python3.7/sit e-packages (from docker-compose<2.0.0,>=1.29.0->brewblox-ctl) (1.6.3)
Requirement already satisfied: dockerpty<1,>=0.4.1 in ./.local/lib/python3.7/sit e-packages (from docker-compose<2.0.0,>=1.29.0->brewblox-ctl) (0.4.1)
Requirement already satisfied: distro<2,>=1.5.0 in ./.local/lib/python3.7/site-p ackages (from docker-compose<2.0.0,>=1.29.0->brewblox-ctl) (1.5.0)
Requirement already satisfied: docopt<1,>=0.6.1 in ./.local/lib/python3.7/site-p ackages (from docker-compose<2.0.0,>=1.29.0->brewblox-ctl) (0.6.2)
Requirement already satisfied: ifaddr>=0.1.7 in ./.local/lib/python3.7/site-pack ages (from zeroconf<0.29.0,>=0.28.8->brewblox-ctl) (0.1.7)
Requirement already satisfied: six in /usr/lib/python3/dist-packages (from confi gobj<6.0.0,>=5.0.6->brewblox-ctl) (1.12.0)
Requirement already satisfied: attrs>=17.4.0 in ./.local/lib/python3.7/site-pack ages (from jsonschema<4,>=2.5.1->docker-compose<2.0.0,>=1.29.0->brewblox-ctl) (2 1.2.0)
Requirement already satisfied: importlib-metadata; python_version < “3.8” in ./. local/lib/python3.7/site-packages (from jsonschema<4,>=2.5.1->docker-compose<2.0 .0,>=1.29.0->brewblox-ctl) (4.3.1)
Requirement already satisfied: pyrsistent>=0.14.0 in ./.local/lib/python3.7/site -packages (from jsonschema<4,>=2.5.1->docker-compose<2.0.0,>=1.29.0->brewblox-ct l) (0.17.3)
Requirement already satisfied: zipp>=0.5 in ./.local/lib/python3.7/site-packages (from importlib-metadata; python_version < “3.8”->jsonschema<4,>=2.5.1->docker- compose<2.0.0,>=1.29.0->brewblox-ctl) (3.4.1)
Requirement already satisfied: typing-extensions>=3.6.4; python_version < “3.8” in ./.local/lib/python3.7/site-packages (from importlib-metadata; python_version < “3.8”->jsonschema<4,>=2.5.1->docker-compose<2.0.0,>=1.29.0->brewblox-ctl) (3. 10.0.0)
pi@raspberrypi:~ $ exec $SHELL --login
pi@raspberrypi:~ $ brewblox-ctl install
Command is about to: Create Brewblox directory; install system dependencies; reb oot.
Do you want to continue? (yes, no, verbose, dry-run) [press ENTER for default va lue ‘yes’]yes
Do you want to install with default settings? [Press ENTER for default value ‘ye s’]

INFO Docker is already installed.
INFO pi already belongs to the docker group.
The /home/pi/brewblox directory already exists. Do you want to continue and er ase the current contents? [Press ENTER for default value ‘yes’]

A reboot is required after installation. Do you want to be prompted before that happens? [Press ENTER for default value ‘yes’]

INFO Installing apt packages…
Hit:1 http://archive.raspberrypi.org/debian buster InRelease
Hit:2 http://raspbian.raspberrypi.org/raspbian buster InRelease
Hit:3 https://download.docker.com/linux/raspbian buster InRelease
Reading package lists… Done
Building dependency tree
Reading state information… Done
All packages are up to date.
Reading package lists… Done
Building dependency tree
Reading state information… Done
Calculating upgrade… Done
The following package was automatically installed and is no longer required:
python-colorzero
Use ‘sudo apt autoremove’ to remove it.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Reading package lists… Done
Building dependency tree
Reading state information… Done
avahi-daemon is already the newest version (0.7-4+deb10u1).
curl is already the newest version (7.64.0-4+deb10u2).
libffi-dev is already the newest version (3.2.1-9).
net-tools is already the newest version (1.60+git20180626.aebd88e-1).
libssl-dev is already the newest version (1.1.1d-0+deb10u6+rpt1).
The following package was automatically installed and is no longer required:
python-colorzero
Use ‘sudo apt autoremove’ to remove it.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
INFO Skipped: docker install.
INFO Enabling IPv6 support in Docker…
INFO Using Docker config file /etc/docker/daemon.json
INFO Skipped: adding pi to ‘docker’ group.
INFO Creating Brewblox directory /home/pi/brewblox
INFO Setting variables in .env file…
touch: cannot touch ‘/home/pi//home/pi/brewblox/.env’: No such file or directory
Command ‘touch /home/pi/"/home/pi/brewblox"/.env’ returned non-zero exit status 1.

After running the brewblox-ctl setup I get below:
pi@raspberrypi:~/brewblox $ brewblox-ctl setup
Usage: brewblox-ctl [OPTIONS] COMMAND [ARGS]…
Try ‘brewblox-ctl --help’ for help.

Error: No such command ‘setup’.

Many commands only work if your current directory is a Brewblox directory.
pi@raspberrypi:~/brewblox $

That looks like a bug (and somehow RichardVs post was not visible when I first replied).

I think I can guess what caused it, and it should be a quick fix.

Edit: I pushed a fix. You can get it by running

pip3 install --user --upgrade --no-cache-dir brewblox-ctl

You need version 0.25.2. Pip can be a bit slow to recognize new releases, so you may need to repeat the install command a few times.

Hi Bob

First of all thanks a lot for the fast replies on a sunday. Much appreciated :-). I tried the fix several times but am still not able to run the “brewblox-ctl setup” I have tried to start over with the first 2 commands but still no luck. The pip version seems to be correct now as far as I can see

pi@raspberrypi:~/brewblox $ pip3 install --user --upgrade --no-cache-dir brewblox-ctl
Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
Requirement already up-to-date: brewblox-ctl in /home/pi/.local/lib/python3.7/site-packages (0.25.2)
Requirement already satisfied, skipping upgrade: configobj<6.0.0,>=5.0.6 in /home/pi/.local/lib/python3.7/site-packages (from brewblox-ctl) (5.0.6)
Requirement already satisfied, skipping upgrade: click<8.0.0,>=7.1.2 in /home/pi/.local/lib/python3.7/site-packages (from brewblox-ctl) (7.1.2)
Requirement already satisfied, skipping upgrade: docker<6.0.0,>=5.0.0 in /home/pi/.local/lib/python3.7/site-packages (from brewblox-ctl) (5.0.0)
Requirement already satisfied, skipping upgrade: PyYAML<6.0.0,>=5.4.1 in /home/pi/.local/lib/python3.7/site-packages (from brewblox-ctl) (5.4.1)
Requirement already satisfied, skipping upgrade: python-dotenv[cli]<0.14.0,>=0.13.0 in /home/pi/.local/lib/python3.7/site-packages (from brewblox-ctl) (0.13.0)
Requirement already satisfied, skipping upgrade: requests<3.0.0,>=2.25.1 in /home/pi/.local/lib/python3.7/site-packages (from brewblox-ctl) (2.25.1)
Requirement already satisfied, skipping upgrade: docker-compose<2.0.0,>=1.29.0 in /home/pi/.local/lib/python3.7/site-packages (from brewblox-ctl) (1.29.2)
Requirement already satisfied, skipping upgrade: zeroconf<0.29.0,>=0.28.8 in /home/pi/.local/lib/python3.7/site-packages (from brewblox-ctl) (0.28.8)
Requirement already satisfied, skipping upgrade: six in /usr/lib/python3/dist-packages (from configobj<6.0.0,>=5.0.6->brewblox-ctl) (1.12.0)
Requirement already satisfied, skipping upgrade: websocket-client>=0.32.0 in /home/pi/.local/lib/python3.7/site-packages (from docker<6.0.0,>=5.0.0->brewblox-ctl) (0.59.0)
Requirement already satisfied, skipping upgrade: chardet<5,>=3.0.2 in /usr/lib/python3/dist-packages (from requests<3.0.0,>=2.25.1->brewblox-ctl) (3.0.4)
Requirement already satisfied, skipping upgrade: certifi>=2017.4.17 in /usr/lib/python3/dist-packages (from requests<3.0.0,>=2.25.1->brewblox-ctl) (2018.8.24)
Requirement already satisfied, skipping upgrade: urllib3<1.27,>=1.21.1 in /usr/lib/python3/dist-packages (from requests<3.0.0,>=2.25.1->brewblox-ctl) (1.24.1)
Requirement already satisfied, skipping upgrade: idna<3,>=2.5 in /usr/lib/python3/dist-packages (from requests<3.0.0,>=2.25.1->brewblox-ctl) (2.6)
Requirement already satisfied, skipping upgrade: docopt<1,>=0.6.1 in /home/pi/.local/lib/python3.7/site-packages (from docker-compose<2.0.0,>=1.29.0->brewblox-ctl) (0.6.2)
Requirement already satisfied, skipping upgrade: dockerpty<1,>=0.4.1 in /home/pi/.local/lib/python3.7/site-packages (from docker-compose<2.0.0,>=1.29.0->brewblox-ctl) (0.4.1)
Requirement already satisfied, skipping upgrade: distro<2,>=1.5.0 in /home/pi/.local/lib/python3.7/site-packages (from docker-compose<2.0.0,>=1.29.0->brewblox-ctl) (1.5.0)
Requirement already satisfied, skipping upgrade: cached-property<2,>=1.2.0; python_version < “3.8” in /home/pi/.local/lib/python3.7/site-packages (from docker-compose<2.0.0,>=1.29.0->brewblox-ctl) (1.5.2)
Requirement already satisfied, skipping upgrade: jsonschema<4,>=2.5.1 in /home/pi/.local/lib/python3.7/site-packages (from docker-compose<2.0.0,>=1.29.0->brewblox-ctl) (3.2.0)
Requirement already satisfied, skipping upgrade: texttable<2,>=0.9.0 in /home/pi/.local/lib/python3.7/site-packages (from docker-compose<2.0.0,>=1.29.0->brewblox-ctl) (1.6.3)
Requirement already satisfied, skipping upgrade: ifaddr>=0.1.7 in /home/pi/.local/lib/python3.7/site-packages (from zeroconf<0.29.0,>=0.28.8->brewblox-ctl) (0.1.7)
Requirement already satisfied, skipping upgrade: importlib-metadata; python_version < “3.8” in /home/pi/.local/lib/python3.7/site-packages (from jsonschema<4,>=2.5.1->docker-compose<2.0.0,>=1.29.0->brewblox-ctl) (4.3.1)
Requirement already satisfied, skipping upgrade: attrs>=17.4.0 in /home/pi/.local/lib/python3.7/site-packages (from jsonschema<4,>=2.5.1->docker-compose<2.0.0,>=1.29.0->brewblox-ctl) (21.2.0)
Requirement already satisfied, skipping upgrade: pyrsistent>=0.14.0 in /home/pi/.local/lib/python3.7/site-packages (from jsonschema<4,>=2.5.1->docker-compose<2.0.0,>=1.29.0->brewblox-ctl) (0.17.3)
Requirement already satisfied, skipping upgrade: setuptools in /usr/lib/python3/dist-packages (from jsonschema<4,>=2.5.1->docker-compose<2.0.0,>=1.29.0->brewblox-ctl) (40.8.0)
Requirement already satisfied, skipping upgrade: typing-extensions>=3.6.4; python_version < “3.8” in /home/pi/.local/lib/python3.7/site-packages (from importlib-metadata; python_version < “3.8”->jsonschema<4,>=2.5.1->docker-compose<2.0.0,>=1.29.0->brewblox-ctl) (3.10.0.0)
Requirement already satisfied, skipping upgrade: zipp>=0.5 in /home/pi/.local/lib/python3.7/site-packages (from importlib-metadata; python_version < “3.8”->jsonschema<4,>=2.5.1->docker-compose<2.0.0,>=1.29.0->brewblox-ctl) (3.4.1)

pi@raspberrypi:~ $ sudo apt update
Hit:1 http://archive.raspberrypi.org/debian buster InRelease
Hit:2 http://raspbian.raspberrypi.org/raspbian buster InRelease
Hit:3 https://download.docker.com/linux/raspbian buster InRelease
Reading package lists… Done
Building dependency tree
Reading state information… Done
All packages are up to date.
pi@raspberrypi:~ $ sudo apt upgrade -y
Reading package lists… Done
Building dependency tree
Reading state information… Done
Calculating upgrade… Done
The following package was automatically installed and is no longer required:
python-colorzero
Use ‘sudo apt autoremove’ to remove it.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
pi@raspberrypi:~ $ sudo apt install -y python3-pip
Reading package lists… Done
Building dependency tree
Reading state information… Done
python3-pip is already the newest version (18.1-5+rpt1).
The following package was automatically installed and is no longer required:
python-colorzero
Use ‘sudo apt autoremove’ to remove it.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
pi@raspberrypi:~ $ pip3 install --user setuptools brewblox-ctl
Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
Requirement already satisfied: setuptools in /usr/lib/python3/dist-packages (40.8.0)
Requirement already satisfied: brewblox-ctl in ./.local/lib/python3.7/site-packages (0.25.2)
Requirement already satisfied: click<8.0.0,>=7.1.2 in ./.local/lib/python3.7/site-packages (from brewblox-ctl) (7.1.2)
Requirement already satisfied: python-dotenv[cli]<0.14.0,>=0.13.0 in ./.local/lib/python3.7/site-packages (from brewblox-ctl) (0.13.0)
Requirement already satisfied: requests<3.0.0,>=2.25.1 in ./.local/lib/python3.7/site-packages (from brewblox-ctl) (2.25.1)
Requirement already satisfied: configobj<6.0.0,>=5.0.6 in ./.local/lib/python3.7/site-packages (from brewblox-ctl) (5.0.6)
Requirement already satisfied: docker-compose<2.0.0,>=1.29.0 in ./.local/lib/python3.7/site-packages (from brewblox-ctl) (1.29.2)
Requirement already satisfied: docker<6.0.0,>=5.0.0 in ./.local/lib/python3.7/site-packages (from brewblox-ctl) (5.0.0)
Requirement already satisfied: zeroconf<0.29.0,>=0.28.8 in ./.local/lib/python3.7/site-packages (from brewblox-ctl) (0.28.8)
Requirement already satisfied: PyYAML<6.0.0,>=5.4.1 in ./.local/lib/python3.7/site-packages (from brewblox-ctl) (5.4.1)
Requirement already satisfied: chardet<5,>=3.0.2 in /usr/lib/python3/dist-packages (from requests<3.0.0,>=2.25.1->brewblox-ctl) (3.0.4)
Requirement already satisfied: idna<3,>=2.5 in /usr/lib/python3/dist-packages (from requests<3.0.0,>=2.25.1->brewblox-ctl) (2.6)
Requirement already satisfied: certifi>=2017.4.17 in /usr/lib/python3/dist-packages (from requests<3.0.0,>=2.25.1->brewblox-ctl) (2018.8.24)
Requirement already satisfied: urllib3<1.27,>=1.21.1 in /usr/lib/python3/dist-packages (from requests<3.0.0,>=2.25.1->brewblox-ctl) (1.24.1)
Requirement already satisfied: six in /usr/lib/python3/dist-packages (from configobj<6.0.0,>=5.0.6->brewblox-ctl) (1.12.0)
Requirement already satisfied: docopt<1,>=0.6.1 in ./.local/lib/python3.7/site-packages (from docker-compose<2.0.0,>=1.29.0->brewblox-ctl) (0.6.2)
Requirement already satisfied: websocket-client<1,>=0.32.0 in ./.local/lib/python3.7/site-packages (from docker-compose<2.0.0,>=1.29.0->brewblox-ctl) (0.59.0)
Requirement already satisfied: texttable<2,>=0.9.0 in ./.local/lib/python3.7/site-packages (from docker-compose<2.0.0,>=1.29.0->brewblox-ctl) (1.6.3)
Requirement already satisfied: distro<2,>=1.5.0 in ./.local/lib/python3.7/site-packages (from docker-compose<2.0.0,>=1.29.0->brewblox-ctl) (1.5.0)
Requirement already satisfied: jsonschema<4,>=2.5.1 in ./.local/lib/python3.7/site-packages (from docker-compose<2.0.0,>=1.29.0->brewblox-ctl) (3.2.0)
Requirement already satisfied: cached-property<2,>=1.2.0; python_version < “3.8” in ./.local/lib/python3.7/site-packages (from docker-compose<2.0.0,>=1.29.0->brewblox-ctl) (1.5.2)
Requirement already satisfied: dockerpty<1,>=0.4.1 in ./.local/lib/python3.7/site-packages (from docker-compose<2.0.0,>=1.29.0->brewblox-ctl) (0.4.1)
Requirement already satisfied: ifaddr>=0.1.7 in ./.local/lib/python3.7/site-packages (from zeroconf<0.29.0,>=0.28.8->brewblox-ctl) (0.1.7)
Requirement already satisfied: importlib-metadata; python_version < “3.8” in ./.local/lib/python3.7/site-packages (from jsonschema<4,>=2.5.1->docker-compose<2.0.0,>=1.29.0->brewblox-ctl) (4.3.1)
Requirement already satisfied: pyrsistent>=0.14.0 in ./.local/lib/python3.7/site-packages (from jsonschema<4,>=2.5.1->docker-compose<2.0.0,>=1.29.0->brewblox-ctl) (0.17.3)
Requirement already satisfied: attrs>=17.4.0 in ./.local/lib/python3.7/site-packages (from jsonschema<4,>=2.5.1->docker-compose<2.0.0,>=1.29.0->brewblox-ctl) (21.2.0)
Requirement already satisfied: typing-extensions>=3.6.4; python_version < “3.8” in ./.local/lib/python3.7/site-packages (from importlib-metadata; python_version < “3.8”->jsonschema<4,>=2.5.1->docker-compose<2.0.0,>=1.29.0->brewblox-ctl) (3.10.0.0)
Requirement already satisfied: zipp>=0.5 in ./.local/lib/python3.7/site-packages (from importlib-metadata; python_version < “3.8”->jsonschema<4,>=2.5.1->docker-compose<2.0.0,>=1.29.0->brewblox-ctl) (3.4.1)
pi@raspberrypi:~ $ exec $SHELL --login
pi@raspberrypi:~ $ brewblox-ctl install
Command is about to: Create Brewblox directory; install system dependencies; reboot.
Do you want to continue? (yes, no, verbose, dry-run) [press ENTER for default value ‘yes’]yes
Do you want to install with default settings? [Press ENTER for default value ‘yes’]

INFO Docker is already installed.
INFO pi already belongs to the docker group.
The /home/pi/brewblox directory already exists. Do you want to continue and erase the current contents? [Press ENTER for default value ‘yes’]

A reboot is required after installation. Do you want to be prompted before that happens? [Press ENTER for default value ‘yes’]

INFO Installing apt packages…
Hit:1 http://raspbian.raspberrypi.org/raspbian buster InRelease
Hit:2 http://archive.raspberrypi.org/debian buster InRelease
Hit:3 https://download.docker.com/linux/raspbian buster InRelease
Reading package lists… Done
Building dependency tree
Reading state information… Done
All packages are up to date.
Reading package lists… Done
Building dependency tree
Reading state information… Done
Calculating upgrade… Done
The following package was automatically installed and is no longer required:
python-colorzero
Use ‘sudo apt autoremove’ to remove it.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Reading package lists… Done
Building dependency tree
Reading state information… Done
avahi-daemon is already the newest version (0.7-4+deb10u1).
curl is already the newest version (7.64.0-4+deb10u2).
libffi-dev is already the newest version (3.2.1-9).
net-tools is already the newest version (1.60+git20180626.aebd88e-1).
libssl-dev is already the newest version (1.1.1d-0+deb10u6+rpt1).
The following package was automatically installed and is no longer required:
python-colorzero
Use ‘sudo apt autoremove’ to remove it.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
INFO Skipped: docker install.
INFO Enabling IPv6 support in Docker…
INFO Using Docker config file /etc/docker/daemon.json
INFO Skipped: adding pi to ‘docker’ group.
/home/pi/brewblox is not a Brewblox directory.

After rebooting

pi@raspberrypi:~/brewblox $ brewblox-ctl setup
Usage: brewblox-ctl [OPTIONS] COMMAND [ARGS]…
Try ‘brewblox-ctl --help’ for help.

Error: No such command ‘setup’.

Many commands only work if your current directory is a Brewblox directory.
pi@raspberrypi:~/brewblox $

It looks like it’s weirded out a bit by the semi-valid brewblox dir.
You can probably solve this by removing the directory, and then re-running install.

cd ~
rm -rf ./brewblox
brewblox-ctl install

It’ll still ask for a reboot, but you can skip this. When it prompts you to reboot, press Ctrl-C instead.

Hi again

Yep that did it. Thanks a ton for the help :slight_smile:

1 Like

Early this morning I did the pip3 install you suggested. Everything worked great.

The new install guide and scripts made this the easiest setup yet.

Thanks for the great support.

2 Likes

I’m now running in to the same/similar issue on 20.04.2 LTS (GNU/Linux 5.4.134-222 armv7l)


Successfully built configobj PyYAML dockerpty docopt pyrsistent
ERROR: docker-compose 1.29.2 has requirement websocket-client<1,>=0.32.0, but you’ll have websocket-client 1.1.0 which is incompatible.
Installing collected packages: configobj, ifaddr, zeroconf, charset-normalizer, requests, websocket-client, docker, click, dockerpty, python-dotenv, PyYAML, distro, docopt, texttable, attrs, pyrsistent, jsonschema, docker-compose, brewblox-ctl
WARNING: The script normalizer is installed in ‘/home/brewer/.local/bin’ which is not on PATH.
Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
WARNING: The script dotenv is installed in ‘/home/brewer/.local/bin’ which is not on PATH.
Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
WARNING: The script distro is installed in ‘/home/brewer/.local/bin’ which is not on PATH.
Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
WARNING: The script jsonschema is installed in ‘/home/brewer/.local/bin’ which is not on PATH.
Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
WARNING: The script docker-compose is installed in ‘/home/brewer/.local/bin’ which is not on PATH.
Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
WARNING: The script brewblox-ctl is installed in ‘/home/brewer/.local/bin’ which is not on PATH.
Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
Successfully installed PyYAML-5.4.1 attrs-21.2.0 brewblox-ctl-0.26.1 charset-normalizer-2.0.3 click-7.1.2 configobj-5.0.6 distro-1.5.0 docker-5.0.0 docker-compose-1.29.2 dockerpty-0.4.1 docopt-0.6.2 ifaddr-0.1.7 jsonschema-3.2.0 pyrsistent-0.18.0 python-dotenv-0.13.0 requests-2.26.0 texttable-1.6.4 websocket-client-1.1.0 zeroconf-0.28.8
brewer@brewery:~$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
brewer@brewery:~$ exec $SHELL --login
brewer@brewery:~$ echo $PATH
/home/brewer/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
brewer@brewery:~$ brewblox-ctl install
Command is about to: Create Brewblox directory; install system dependencies; reboot.
Do you want to continue? (yes, no, verbose, dry-run) [press ENTER for default value ‘yes’]v
Do you want to install with default settings? [Press ENTER for default value ‘yes’]
y
A reboot is required after installation. Do you want to be prompted before that happens? [Press ENTER for default value ‘yes’]

INFO Installing apt packages…
SHELL sudo apt update
Hit:1 http://ppa.launchpad.net/hardkernel/ppa/ubuntu focal InRelease
Hit:2 http://ppa.launchpad.net/tobetter/ppa/ubuntu focal InRelease
Hit:3 https://download.docker.com/linux/ubuntu focal InRelease
Hit:4 http://ports.ubuntu.com/ubuntu-ports focal InRelease
Hit:5 http://ports.ubuntu.com/ubuntu-ports focal-updates InRelease
Hit:6 http://ports.ubuntu.com/ubuntu-ports focal-backports InRelease
Hit:7 http://deb.odroid.in/5422-s focal InRelease
Hit:8 http://ports.ubuntu.com/ubuntu-ports focal-security InRelease
Reading package lists… Done
Building dependency tree
Reading state information… Done
All packages are up to date.
SHELL sudo apt upgrade -y
Reading package lists… Done
Building dependency tree
Reading state information… Done
Calculating upgrade… Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
SHELL sudo apt install -y curl net-tools libssl-dev libffi-dev avahi-daemon
Reading package lists… Done
Building dependency tree
Reading state information… Done
libffi-dev is already the newest version (3.3-4).
net-tools is already the newest version (1.60+git20180626.aebd88e-1ubuntu1).
avahi-daemon is already the newest version (0.7-4ubuntu7.1).
curl is already the newest version (7.68.0-1ubuntu2.6).
libssl-dev is already the newest version (1.1.1f-1ubuntu2.4).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
INFO Installing docker…
SHELL curl -sL get.docker.com | sh

Executing docker install script, commit: 7cae5f8b0decc17d6571f9f52eb840fbc13b2737

INFO Enabling IPv6 support in Docker…
SHELL cat /proc/version
SHELL ps aux | grep dockerd
INFO Using Docker config file /etc/docker/daemon.json
SHELL sudo touch ‘/etc/docker/daemon.json’
touch: cannot touch ‘/etc/docker/daemon.json’: No such file or directory
Command ‘sudo touch ‘/etc/docker/daemon.json’’ returned non-zero exit status 1.
brewer@brewery:~$

It’s odd as it was working fine on this machine before but I chose to do a fresh install so something must have changed.

My path is

brewer@brewery:~$ echo $PATH
/home/brewer/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin

The first error is websocket-client as per the previous posts and the docker issues.

I have no ./brewblox directory in ~

It seems the /etc/docker directory does not exist.

If you run sudo mkdir -p /etc/docker, and then retry the install, does it then work?

Thanks, just did and got this…

INFO Installing docker…
SHELL curl -sL get.docker.com | sh

Executing docker install script, commit: 7cae5f8b0decc17d6571f9f52eb840fbc13b2737

INFO Enabling IPv6 support in Docker…
SHELL cat /proc/version
SHELL ps aux | grep dockerd
INFO Using Docker config file /etc/docker/daemon.json
SHELL sudo touch ‘/etc/docker/daemon.json’
SHELL sudo cat ‘/etc/docker/daemon.json’
SHELL echo ‘{
“ipv6”: true,
“fixed-cidr-v6”: “2001:db8:1::/64”
}’ | sudo tee ‘/etc/docker/daemon.json’ > /dev/null
INFO Adding brewer to ‘docker’ group…
SHELL sudo usermod -aG docker $USER
usermod: group ‘docker’ does not exist
Command ‘sudo usermod -aG docker $USER’ returned non-zero exit status 6.

Seems I can’t install docker manually either.

That starts to look like Docker failed to install.
Can you run these commands without error?

docker version
sudo docker run --rm hello-world

It doesn’t seem to be installing docker nor can I seem to be able to do this manually. Strange.

brewer@brewery:~$ docker version
bash: docker: command not found

At a guess, they broke something in their install script or deployment pipeline. (their track record on that front is not exactly stellar)

https://computingforgeeks.com/how-to-install-docker-on-ubuntu/ has up-to-date instructions for a more manual install on Ubuntu.

OK. Seemed happy until I got to…

brewer@brewery:~$ sudo apt install docker-ce docker-ce-cli containerd.io
Reading package lists… Done
Building dependency tree
Reading state information… Done
Package docker-ce is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
However the following packages replace it:
docker-ce-cli:amd64

E: Package ‘docker-ce’ has no installation candidate
E: Unable to locate package docker-ce-cli
E: Unable to locate package containerd.io
E: Couldn’t find any package by glob ‘containerd.io

Will do some digging…

apt - "Package 'docker-ce' has no installation candidate" in 18.04 - Ask Ubuntu describes a common cause for this (we’ve seen this happen with every single Ubuntu/Debian release).
They’ve had 20.04 (focal) versions available for a while now, but maybe something went wrong somewhere.

If you run sudo cat/etc/apt/sources.list.d/docker.list it should look something like this:

deb [arch=amd64] https://download.docker.com/linux/ubuntu focal stable

You could try replacing focal with bionic, doing a sudo apt update, and then the apt install again.

OK, I got to the bottom of it as I needed the armhf docker source

deb [arch=armhf] https://download.docker.com/linux/ubuntu bionic stable

I don’t know why the installation process worked for me last time and not this time. Was puzzled as to why it thought I needed amd64 but it usually knows better than me :rofl:

As usual Bob I appreciate your help :+1:

1 Like