Error after updating

I got this error after running “brewblox-ctl update”

Running command:
docker-compose down

ERROR: .FileNotFoundError: [Errno 2] No such file or directory: ‘./docker-compose.shared.yml’
Command ‘docker-compose down’ returned non-zero exit status 1

Could you please run brewblox-ctl log?

Something seems to have gone wrong during the update that split the docker-compose.yml. The solution depends on what your config currently looks like.

pi@raspberrypi:~/brewblox $ brewblox-ctl log
Why are you generating this log? (will be included in log)
Can we include your docker-compose file? You should choose “no” if it contains any passwords or other sensitive information [Press ENTER for default value ‘Yes’]

The following shell commands will be used:

     echo "BREWBLOX DIAGNOSTIC DUMP" > brewblox.log
     date >> brewblox.log
     echo '' >> brewblox.log
     echo "==============VARS==============" >> brewblox.log
     echo "$(uname -a)" >> brewblox.log
     echo "$(docker --version)" >> brewblox.log
     echo "$(docker-compose --version)" >> brewblox.log
     echo "BREWBLOX_CFG_VERSION=0.2.2" >> brewblox.log
     echo "BREWBLOX_PORT_HTTPS=443" >> brewblox.log
     echo "BREWBLOX_PORT_HTTP=82" >> brewblox.log
     echo "BREWBLOX_PORT_MDNS=5000" >> brewblox.log
     echo "BREWBLOX_RELEASE=edge" >> brewblox.log
     echo "==============LOGS==============" >> brewblox.log
     echo 'FileNotFoundError: [Errno 2] No such file or directory: '"'"'docker-compose.shared.yml'"'"'' >> brewblox.log
     echo "==============COMPOSE==============" >> brewblox.log
     cat docker-compose.yml >> brewblox.log
     echo "==============SHARED===============" >> brewblox.log
     cat docker-compose.shared.yml >> brewblox.log
     echo "==============BLOCKS==============" >> brewblox.log
     /usr/bin/python3 -m brewblox_ctl http get --pretty https://localhost:443/spark-one/objects >> brewblox.log || echo "spark-one not found" >> brewblox.log
     echo "==============INSPECT==============" >> brewblox.log
     for cont in $(docker-compose ps -q); do docker inspect $(docker inspect --format '{{ .Image }}' "$cont") >> brewblox.log; done;

Press ENTER to continue, Ctrl+C to cancel

Running command:
echo “BREWBLOX DIAGNOSTIC DUMP” > brewblox.log

Running command:
date >> brewblox.log

Running command:
echo ‘’ >> brewblox.log

Running command:
echo “==============VARS==============” >> brewblox.log

Running command:
echo “$(uname -a)” >> brewblox.log

Running command:
echo “$(docker --version)” >> brewblox.log

Running command:
echo “$(docker-compose --version)” >> brewblox.log

Running command:
echo “BREWBLOX_CFG_VERSION=0.2.2” >> brewblox.log

Running command:
echo “BREWBLOX_PORT_HTTPS=443” >> brewblox.log

Running command:
echo “BREWBLOX_PORT_HTTP=82” >> brewblox.log

Running command:
echo “BREWBLOX_PORT_MDNS=5000” >> brewblox.log

Running command:
echo “BREWBLOX_RELEASE=edge” >> brewblox.log

Running command:
echo “==============LOGS==============” >> brewblox.log

Running command:
echo ‘FileNotFoundError: [Errno 2] No such file or directory: ‘"’"‘docker-compose.shared.yml’"’"’’ >> brewblox.log

Running command:
echo “==============COMPOSE==============” >> brewblox.log

Running command:
cat docker-compose.yml >> brewblox.log

Running command:
echo “==============SHARED===============” >> brewblox.log

Running command:
cat docker-compose.shared.yml >> brewblox.log

cat: docker-compose.shared.yml: Filen eller katalogen finns inte
Command ‘cat docker-compose.shared.yml >> brewblox.log’ returned non-zero exit status 1

… I’ll add an issue for it not quitting when it can’t find a file.

For now, please run this command instead, and post the link.

cat brewblox.log docker-compose.yml.log | nc termbin.com 9999

pi@raspberrypi:~/brewblox $ cat brewblox.log docker-compose.yml.log | nc termbin.com 9999
cat: docker-compose.yml.log: Filen eller katalogen finns inte
https://termbin.com/pwd6
pi@raspberrypi:~/brewblox $

Cheers. Running these commands should fix the issue:

cp ./brewblox_ctl_lib/config_files/armhf/docker-compose.shared.yml ./
dotenv --quote never set BREWBLOX_CFG_VERSION 0.3.0
brewblox-ctl update

Thanks now its working

1 Like

I’m getting this same error now too but when I run the command it doesn’t work for me:
“cp: unrecognized option ‘–quote’” (Probably because it’s a year old but I revived the thread since it may be a “thing”)

Here are my log files too in case that helps…https://termbin.com/085c

Each line is a separate command. The --quote is an argument for dotenv, not cp.

I do suspect that it’s also not the relevant fix for your system.
Could you please run ls, and copy the output? We’ll have to infer the current state of your configuration.

ubuntu@ubuntu:/brewblox$ ls
brewblox brewblox.log brewblox_ctl_lib docker-compose.yml

This lacks most of what I’d expect, and there’s another brewblox file or directory. If you run it again in /brewblox/brewblox, does it then show docker-compose.shared.yml, influxdb, redis, traefik?

You’re now also using a root directory /brewblox, and not a user directory ~/brewblox. Is this intentional?

No the /brewblox/brewblox directory is empty. Nothing I do on Linux is really intentional…I don’t really know that OS very well.

If I wipe it out and start again, is that easier than troubleshooting? I can, I’ve done that like 100 times already, I’m comfortable doing that, I have a backup of my other setup.

Getting started | Brewblox for more info, but /brewblox is not the same as ~/brewblox. If you look in ~/brewblox, does that exist?

If you have a recent backup, and ~/brewblox doesn’t exist, then it’s indeed easiest to remove the /brewblox dir, navigate to home cd ~, and then reinstall.

ubuntu@ubuntu:/$ pwd
/
ubuntu@ubuntu:/$ cd ~/brewblox
-bash: cd: /home/ubuntu/brewblox: No such file or directory

1 Like

By golly, that worked…all back up and happy! Thanks!

1 Like

So sorry for keeping an old thread alive but I have a newbie-linux question; I think I understand now that whatever directory you’re in “things” happen there (Like downloads, extracting files, running executables and such). When I run brewblox-ctrl update in the future, does it matter which directory I run it from or now that I (hopefully) have installed correctly from a user and not a root directory, does it not matter?

Often, but not guaranteed. Any process that reads or writes files can choose to use absolute or relative paths.

Absolute paths always start at /, relative paths start at the current working dir (the directory you’re in).

It’s like giving somebody a street address vs telling them to take the second right and then the first left.

Yes, it matters. It can’t even find the command when the brewblox dir is not the current working dir.

1 Like