Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Last version break pi zero W #766

Open
NicolasDesvignes opened this issue Oct 3, 2023 · 16 comments
Open

Last version break pi zero W #766

NicolasDesvignes opened this issue Oct 3, 2023 · 16 comments

Comments

@NicolasDesvignes
Copy link

Hi,
i used for years fermentrack on a pi zero W, it worked fine, now i a 502 bad gateway and i can't force a fresh install, the setup told me
./install.sh *** ERROR: This is an armv6l Pi (e.g. Pi Zero, Zero W, or Original RPi) which isn't capable of running Fermentrack. Exiting.

So i can't use my ispindel, why did you break the pi zero W compatibility?

@thorrak
Copy link
Owner

thorrak commented Oct 4, 2023

Fermentrack is built on top of a number of Packages by other developers, some of which unfortunately stopped supporting builds for ARMv6. Although Fermentrack itself doesn’t have any incompatibility, if those packages don’t support it then there’s not much that can be done.

Keeping the above in mind, if you want to play guinea pig, I can try to quickly produce an install script that doesn’t immediately kick back on an ARMv6 and you can give it a whirl. I don’t recall which specific package was causing issues, so it’s possible that it was something like zmq which I no longer use. Installation may take ages, and could ultimately fail, but if you’re interested in giving it a shot I can see what I can pull together.

@NicolasDesvignes
Copy link
Author

i would to, or can you give me an old version that i can run on my pi zero w, i just use it to track fermentation with ispindel, i don't use any other fonctions

@thorrak
Copy link
Owner

thorrak commented Oct 4, 2023

I just updated the Fermentrack Tools script to allow you to set a flag to override the Pi Zero check. Let me know if you have any questions (and if it works!)

@NicolasDesvignes
Copy link
Author

Thank you
I'm not in the install setup, locked at
What port would you like to access Fermentrack on? [80]: ::: 80 is a valid port for installation. Continuing. *** ERROR: Port 6379 is required by Redis, but is currently in use. Installation cannot continue.

@thorrak
Copy link
Owner

thorrak commented Oct 5, 2023

Thank you I'm not in the install setup, locked at What port would you like to access Fermentrack on? [80]: ::: 80 is a valid port for installation. Continuing. *** ERROR: Port 6379 is required by Redis, but is currently in use. Installation cannot continue.

Are you installing on the same SD card as an existing installation? If so, the issue is that you have an existing installation of redis. I believe - but have not tested - that you can just uninstall this by running sudo apt-get remove redis-server

That said, my recommendation here would definitely be to use a brand new SD card rather than trying to install over the old one if possible. There's likely some other things (nginx configuration stands out) that you will need to reconfigure as a result of installing over an old version that would be cleaned up if you were installing fresh.

@NicolasDesvignes
Copy link
Author

i used an existing installation
the install ended with
latest: Pulling from jdbeeler/fermentrack ERROR: no matching manifest for linux/arm/v6 in the manifest list entries Pulling django (jdbeeler/fermentrack:latest)... latest: Pulling from jdbeeler/fermentrack ERROR: no matching manifest for linux/arm/v6 in the manifest list entries Total reclaimed space: 0B ::: Waiting for Fermentrack install to initialize and become responsive. ::: Fermentrack may take up to 3 minutes to first boot as the database is being initialized. ..........................................................................................missing. *** ERROR: Unable to find an initialized, responsive instance of Fermentrack

@thorrak
Copy link
Owner

thorrak commented Oct 5, 2023

Ok. I can attempt a fix for that but it will take a bit to build. Keep your fingers crossed - this will be the moment of truth.

@NicolasDesvignes
Copy link
Author

oh, thank you !
i stay tuned, and i crossed my fingers.

@thorrak
Copy link
Owner

thorrak commented Oct 5, 2023

I managed to get it to build, but had to remove one of the upstream dependencies for numpy. To use the image I just built, run ./install.sh -z -i testing from your fermentrack-tools directory.

Let me know how it goes -- I'm curious now!

@NicolasDesvignes
Copy link
Author

with two parameter, it can't be launch
sudo ./install.sh -z -i testing ./install.sh : option non permise -- z Invalid option: - Usage: ./install.sh [-h] [-n] [-p <port_number>] [-i <image>] Options: -h This help -n Run non interactive installation -p <port_number> Specify port to access Fermentrack -i <image> Docker image tag (defaults to 'latest') -z Ignore Pi Zero check

with only -i testing it looping on
Waiting for PostgreSQL to become available... Traceback (most recent call last): File "<stdin>", line 3, in <module> File "/usr/local/lib/python3.9/site-packages/psycopg2/__init__.py", line 51, in <module> from psycopg2._psycopg import ( # noqa ModuleNotFoundError: No module named 'psycopg2._psycopg' Waiting for PostgreSQL to become available...

@thorrak
Copy link
Owner

thorrak commented Oct 5, 2023

I just fixed it so that the -z parameter should now work, and also pushed out something that might fix the psycopg2 issue. Try re-running ./install.sh -z -i testing and see if it helps.

@NicolasDesvignes
Copy link
Author

i still have the psycopg2 issue :(
i think i'll try to found an old fork to try it.
Thanks for your help

@thorrak
Copy link
Owner

thorrak commented Oct 22, 2023

Were you able to get it working with the older fork?

@NicolasDesvignes
Copy link
Author

hi, i'm trying to install again.
Freshly installed bullseye on pi zero w
I ran https://github.com/thorrak/fermentrack-tools/blob/master/non_docker_install/install.sh, then

::: Running updateCronCircus.sh from the script repo *** ERROR: Could not find updateCronCircus.sh!
I don't find this file in the directory, have you a copy of this file please?

@thorrak
Copy link
Owner

thorrak commented Nov 6, 2023

That script - updateCronCircus - was designed to specifically launch Circus which was the former Fermentrack process manager. Fermentrack no longer uses circus, and thus that script is no longer necessary.

The install script you are referencing - in non_docker_install - is just a frozen version of the install script from two years ago which attempts to perform a non-dockerized installation. It has not been updated for the latest versions of Fermentrack hence why it still references Circus.

Due to the number of environmental/instance-specific issues caused by non-docker installs I no longer encourage or support their use. Fermentrack’s code supports non-docker installations so if you want to go down that path you could do it manually, but there is no working, automated install script that I am aware of.

Although I do not encourage them, if you (or someone else reading this) do decide to go with a non-docker install and want to update the install script in fermentrack-tools to work with the latest versions of Fermentrack, I will merge a PR that updates it. I won’t update documentation to steer users towards it, however, as supporting non-docker installs is too much of a resource drain.

@thorrak
Copy link
Owner

thorrak commented Nov 6, 2023

Separately, I will note that it seems like docker isn’t the issue here but Postgres. Is that correct?

An easier solution might be to tweak the configuration to use SQLite instead of Postgres, and strip that requirement.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants