Why is docker-compose not working anymore with Umbrel 1.0?

When I try to restart the mempool app I get the following error:
sudo ~/umbrel/scripts/app restart mempool

This script requires “docker-compose” to be installed

Is this not installed anymore. I get a similar error message when I try to sudo raspi-config

Pass it through with all apps. Por ejemplo ~/umbrel/scripts/app stop bitcoin

Same message: This script requires “docker-compose” to be installed

Hi @umbrel101 umbrelOS 1.0 made many changes to umbreld including umbrel scripts.

You can now restart the mempool app by right-clicking it from the main dashboard and selecting restart.

Nobody cares about a fcking dashboard!

The question was and is, why somebody (me too) get this fcking message: This script requires “docker-compose” to be installed?
I updated this with “sudo apt-get install docker-compose-plugin” to version 2.25.0 but nothing changed.

In my case you can’t stop Bitcoinapp with a right click on dashboard. And i can’t stop this docker with
“~/umbrel/scripts/app stop bitcoin”

But i needed it to stop for trying something, because since fcking 4 weeks my fcking node does not fully sync! It always stops with different percents synct and than it hung ob by “starting”. I reinstalled umbrel multiple times and this fcking app too. Nothing works!
All this shit after 1,5 year the system worked fine.

Totally get your frustration, folks! Apologies for the confusion.

To clarify, we’ve transitioned to a much more robust architecture. If you’d like to start/stop apps via command line, you can do the following:

Stop an app:

umbreld client apps.stop.mutate --appId <app-id>

Example:

umbreld client apps.stop.mutate --appId bitcoin

And start it with:

umbreld client apps.restart.mutate --appId <app-id>

Thank you. I have the problem that I cannot start the public pool app. How can I delete this or restart this without the dashboard? Is there a command to list all installed apps? And how can I uninstall and install apps via ssh?

Where can I read about “umbreld” command? is there a documentation?

@umbrel101 Here are the commands.

To list all installed apps:

umbreld client apps.list.query

To uninstall an app:

umbreld client apps.uninstall.mutate --appId <app-id>

To install an app:

umbreld client apps.install.mutate --appId <app-id>

To start and/or restart an app:

umbreld client apps.restart.mutate --appId <app-id>

To stop an app:

umbreld client apps.stop.mutate --appId <app-id>

To update an app:

umbreld client apps.update.mutate --appId <app-id>

@goyban We haven’t documented all the umbreld commands as they’re supposed to be used for development purposes. However, you can have a read through this bit of the source code to figure out all the exposed routes, which correlate to CLI commands as I shared above: umbrel/packages/umbreld/source/modules/server/trpc/routes at master · getumbrel/umbrel · GitHub

Ok that’s better, could you also add commands to start, stop Umbrel itself?

@goyban you can use the following to stop/start/restart the main umbreld service:

sudo systemctl stop umbrel
sudo systemctl start umbrel
sudo systemctl restart umbrel

Uninstall was successfull, but install is failing. What can be the reason for this?

image

You should be able to see the output in the umbrel logs

sudo journalctl -u umbrel -f
Mar 25 07:35:14 umbrel umbreld[452430]: time="2024-03-25T07:35:14Z" level=warning msg="/usr/local/lib/node_modules/umbreld/source/modules/apps/legacy-compat/docker-compose.app_proxy.yml: `version` is obsolete"
Mar 25 07:35:14 umbrel umbreld[452430]: time="2024-03-25T07:35:14Z" level=warning msg="/usr/local/lib/node_modules/umbreld/source/modules/apps/legacy-compat/docker-compose.common.yml: `version` is obsolete"
Mar 25 07:35:14 umbrel umbreld[452430]: time="2024-03-25T07:35:14Z" level=warning msg="/home/umbrel/umbrel/app-data/public-pool/docker-compose.yml: `version` is obsolete"
Mar 25 07:35:14 umbrel umbreld[452430]: time="2024-03-25T07:35:14Z" level=warning msg="networks.default: external.name is deprecated. Please set name and external: true"
Mar 25 07:35:14 umbrel umbreld[452430]:  Container public-pool_app_proxy_1  Running
Mar 25 07:35:14 umbrel umbreld[452430]:  Container public-pool_web_1  Running
Mar 25 07:35:14 umbrel umbreld[452430]:  Container public-pool_server_1  Starting
Mar 25 07:35:14 umbrel umbreld[452430]: Error response from daemon: driver failed programming external connectivity on endpoint public-pool_server_1 (1adc9ca8e75ccaaf930a53e671a9c1160b90a380aa34c2c62d9cb1e7113fc1d5): Bind for 0.0.0.0:2018 failed: port is already allocated
Mar 25 07:35:14 umbrel umbreld[3404]: [app          ] [error] Attempt 3 installing app public-pool failed. There are 0 retries left.
Mar 25 07:35:14 umbrel umbreld[3404]: [apps         ] [error] Failed to install app public-pool: Command failed with exit code 1: /usr/local/lib/node_modules/umbreld/source/modules/apps/legacy-compat/app-script install public-pool

seems umbrel using port 2018 now for other internal stuff. can someone confirm?

Can you run

sudo apt install net-tools
sudo ss -tulnpe | grep ':2018'

it should show us what is using port 2018

umbrel@umbrel:~$ sudo ss -tulnpe | grep ':2018'
tcp   LISTEN 0      4096                                  0.0.0.0:2018       0.0.0.0:*    users:(("docker-proxy",pid=861,fd=4)) ino:1862 sk:a cgroup:/system.slice/docker.service <->
tcp   LISTEN 0      4096                                     [::]:2018          [::]:*    users:(("docker-proxy",pid=869,fd=4)) ino:6171 sk:15 cgroup:/system.slice/docker.service v6only:1 <->

can you try

sudo docker ps | grep ':2018'

shows nothing:

umbrel@umbrel:~$ sudo docker ps | grep ':2018'
umbrel@umbrel:~$ sudo ss -tulnpe | grep ':2018'
tcp   LISTEN 0      4096                                  0.0.0.0:2018       0.0.0.0:*    users:(("docker-proxy",pid=861,fd=4)) ino:1862 sk:a cgroup:/system.slice/docker.service <->
tcp   LISTEN 0      4096                                     [::]:2018          [::]:*    users:(("docker-proxy",pid=869,fd=4)) ino:6171 sk:15 cgroup:/system.slice/docker.service v6only:1 <->

image