getumbrel / umbrel

A beautiful home server OS for self-hosting with an app store. Buy a pre-built Umbrel Home with umbrelOS, or install on a Raspberry Pi or any x86 system.
https://umbrel.com
Other
7.63k stars 542 forks source link

RPI5 - Umbrel cannot start jam and snowflake - Container Issue #1817

Open gibbs19 opened 6 months ago

gibbs19 commented 6 months ago

I've been struggling to get both Jam and Snowflake to start after migrating from a RPi 4. I did a detailed writeup on the community page here, but I'll paste it here for visibility.

I just picked up a RPi 5 and swapped out my RPi 4 that was running Umbrel flawlessly. The Pi 4 had no issues running Bitcoin core, Electrs, Mempoo, Jam and Snowflake. I made sure Bitcoin core was up to date to v27.

As soon as the Pi 5 booted up, both Jam and Snowflake (Tor Relay) would not open, giving an unable to connect message. (It appears Jam has an issue with 1.1 and an issue has been filed).

e876c1ec74d4b5369ca2b9e433655e1e1e1dcceb

After troubleshooting for quite some time, including switching ports on the docker container as per some community posts, I resorted to doing a fresh reinstall the Pi 5 image using BalenaEtcher and wiping my 2TB hard drive connected to the Pi. The first thing I did after initialization was install Snowflake and it gave me the same error. I switched the docker ports from 3800 to 3805 and to a number of other ports without luck.

I reinstalled core, electrs, and it’s syncing without issues.

The logs are always the same for Snowflake:

snowflake_app_proxy_1  | Error waiting for port: "The address 'snowflake_web_1' cannot be found"
snowflake_app_proxy_1  | Retrying...
snowflake_app_proxy_1  | Error waiting for port: "The address 'snowflake_web_1' cannot be found"
snowflake_app_proxy_1  | Retrying...
snowflake_app_proxy_1  | Error waiting for port: "The address 'snowflake_web_1' cannot be found"
snowflake_app_proxy_1  | Retrying...
snowflake_app_proxy_1  | Error waiting for port: "The address 'snowflake_web_1' cannot be found"

The app itself does appear to be relaying traffic per the logs, but I believe the snowflake_web_1 is the frontend GUI that allows us to see the connection statuses.

Dialing into the Umbrel (using SSH), I was able to see that web was having issues starting:

$ sudo docker compose ls
NAME                STATUS                      CONFIG FILES
bitcoin             running(5)                  /usr/local/lib/node_modules/umbreld/source/modules/apps/legacy-compat/docker-compose.app_proxy.yml,/usr/local/lib/node_modules/umbreld/source/modules/apps/legacy-compat/docker-compose.common.yml,/home/umbrel/umbrel/app-data/bitcoin/docker-compose.yml
electrs             running(4)                  /usr/local/lib/node_modules/umbreld/source/modules/apps/legacy-compat/docker-compose.app_proxy.yml,/usr/local/lib/node_modules/umbreld/source/modules/apps/legacy-compat/docker-compose.common.yml,/home/umbrel/umbrel/app-data/electrs/docker-compose.yml
snowflake           restarting(1), running(2)   /usr/local/lib/node_modules/umbreld/source/modules/apps/legacy-compat/docker-compose.app_proxy.yml,/usr/local/lib/node_modules/umbreld/source/modules/apps/legacy-compat/docker-compose.common.yml,/home/umbrel/umbrel/app-data/snowflake/docker-compose.yml
umbrel              running(2)                  /usr/local/lib/node_modules/umbreld/source/modules/apps/legacy-compat/docker-compose.yml

Checking the container logs, it also confirms it’s been restarting.

$ sudo docker container ls
CONTAINER ID   IMAGE                             COMMAND                  CREATED             STATUS                        PORTS                                                                                                                        NAMES
c5c19a029e44   getumbrel/umbrel-bitcoin:v0.7.0   "docker-entrypoint.s…"   About an hour ago   Up About an hour              3006/tcp                                                                                                                     bitcoin_server_1
be59f130ac86   getumbrel/umbrel-electrs:v1.0.2   "docker-entrypoint.s…"   About an hour ago   Up About an hour              3006/tcp                                                                                                                     electrs_app_1
092dea50bdad   lncm/bitcoind:v27.0               "bitcoind -port=8333…"   About an hour ago   Up About an hour              8080/tcp, 18332-18333/tcp, 18443-18444/tcp, 28332-28333/tcp, 0.0.0.0:8332-8333->8332-8333/tcp, :::8332-8333->8332-8333/tcp   bitcoin_bitcoind_1
df6b4d4e1c24   purplei2p/i2pd:release-2.44.0     "/entrypoint.sh --sa…"   About an hour ago   Up About an hour              2827/tcp, 4444/tcp, 4447/tcp, 7070/tcp, 7650/tcp, 7654/tcp, 7656/tcp                                                         bitcoin_i2pd_daemon_1
6da43dc1d5dd   getumbrel/app-proxy:1.0.0         "docker-entrypoint.s…"   About an hour ago   Up About an hour              0.0.0.0:2100->2100/tcp, :::2100->2100/tcp                                                                                    bitcoin_app_proxy_1
9fef348b3834   getumbrel/tor:0.4.7.8             "tor"                    About an hour ago   Up About an hour                                                                                                                                           bitcoin_tor_1
28256fed0df2   getumbrel/tor:0.4.7.8             "tor"                    About an hour ago   Up About an hour                                                                                                                                           electrs_tor_1
7f17e18a0c60   getumbrel/electrs:v0.10.2         "electrs"                About an hour ago   Up About an hour              4224/tcp, 0.0.0.0:50001->50001/tcp, :::50001->50001/tcp                                                                      electrs_electrs_1
fb49a9a66c39   getumbrel/app-proxy:1.0.0         "docker-entrypoint.s…"   About an hour ago   Up About an hour              0.0.0.0:2102->2102/tcp, :::2102->2102/tcp                                                                                    electrs_app_proxy_1
520aecba431c   getumbrel/snowflake:v2.7.0        "/bin/proxy -log /da…"   About an hour ago   Up About an hour                                                                                                                                           snowflake_proxy_1
7af9eee7f11a   getumbrel/app-proxy:1.0.0         "docker-entrypoint.s…"   About an hour ago   Up About an hour              0.0.0.0:3800->3800/tcp, :::3800->3800/tcp                                                                                    snowflake_app_proxy_1
8d0547502cf7   getumbrel/gotty:v1.0.1            "gotty --port 3800 -…"   About an hour ago   Restarting (1) 1 second ago                                                                                                                                snowflake_web_1
9a20fb5d12e8   getumbrel/auth-server:1.0.5       "docker-entrypoint.s…"   About an hour ago   Up About an hour              0.0.0.0:2000->2000/tcp, :::2000->2000/tcp                                                                                    auth
13e3a4330952   getumbrel/tor:0.4.7.8             "tor"                    About an hour ago   Up About an hour         

The container logs point to a page size error:

$ sudo docker container logs 8d0547502cf7
<snip>
runtime: kernel page size (16384) is larger than runtime page size (4096)
runtime: kernel page size (16384) is larger than runtime page size (4096)
runtime: kernel page size (16384) is larger than runtime page size (4096)
runtime: kernel page size (16384) is larger than runtime page size (4096)

There are some posts online that help with setting a smaller page size, but I’m not the best with docker. Before I start messing around with the underlying system, does anyone have any ideas on how to fix this properly? Like I said, all my apps including core, eletrs, jam and snowflake worked without any issues on my RPi 4.

The Jam issue is possibly related to Jam itself, and issue was filed in their repository.

Github Issue Community post

gibbs19 commented 5 months ago

Update to this:

  1. Jam issue is resolved a little while ago.
  2. The Tor Snowflake issue is still present in 1.2, fresh install.
gibbs19 commented 13 hours ago

Issue is still present in 1.3.