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

1 Like

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.

1 Like

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>
1 Like

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>
5 Likes

@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
3 Likes

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
1 Like
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