# "docker-compose" vs "docker compose"

**URL:** <https://community.umbrel.com/t/docker-compose-vs-docker-compose/6732>\
**Category:** Support and Troubleshooting\
**Created:** [March 12, 2022, 11:03pm UTC](https://community.umbrel.com/t/docker-compose-vs-docker-compose/6732 "2022-03-12T23:03:17Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![Jim](https://avatars.discourse-cdn.com/v4/letter/j/ac91a4/32.png) [@Jim](https://community.umbrel.com/u/Jim)\
**Post date:** [March 12, 2022, 11:03pm UTC](https://community.umbrel.com/t/docker-compose-vs-docker-compose/6732/1 "2022-03-12T23:03:17Z")

</div>

So I just finished an install of Umbrel on Debian Bullseye 11.2. Ran into some trouble with docker-compose, using Compose 2.2.3.

I’m not super familiar with Docker, so I don’t know if this is a recent change with Compose or what, but I noticed that running something like “docker-compose version” would return that “docker-compose” was not a valid command.

However, “docker compose version” returned the running version as expected (no dash).

I was able to correct the issues with running ./scripts/start because of this by altering all references to running “docker-compose” with “docker compose”. Also commented out the dependency checks for now in all of those scripts since I knew the rest was already good, otherwise it would tell me “docker-compose must be installed”.

After those changes, it started and is now syncing the blockchain. I have other things I need to figure out still, but the fact it is running at the moment and accessible gives me hope.

I’m just putting this out there for anyone else experiencing this issue, I know the Linux install is currently in the experimental phase so considering that, the whole thing was actually quite smooth.

---

<div class="post-metadata">

**Author:** ![DarthCoin](https://yyz2.discourse-cdn.com/flex030/user_avatar/community.umbrel.com/darthcoin/32/1628_2.png) [@DarthCoin](https://community.umbrel.com/u/DarthCoin)\
**Post date:** [March 13, 2022, 12:57pm UTC](https://community.umbrel.com/t/docker-compose-vs-docker-compose/6732/2 "2022-03-13T12:57:12Z")

</div>

Be careful! When you install docker compose for Debian you need to choose dedicated repositories for Debian NOT Ubuntu!  
Re-do all the process and select the correct ones, otherwise you cannot install umbrel or make it run on that machine.

---

<div class="post-metadata">

**Author:** ![hey\_its\_wilson](https://avatars.discourse-cdn.com/v4/letter/h/e36b37/32.png) [@hey\_its\_wilson](https://community.umbrel.com/u/hey_its_wilson)\
**Post date:** [May 18, 2023, 3:36pm UTC](https://community.umbrel.com/t/docker-compose-vs-docker-compose/6732/3 "2023-05-18T15:36:48Z")

</div>

You can also update the `check_dependencies` function to support arguments passed to it with spaces in them.

```auto
check_dependencies () {
  for cmd in "$@"; do
    if ! bash -c "command -v $cmd" >/dev/null 2>&1; then
      echo "This script requires \"${cmd}\" to be installed"
      exit 1
    fi
  done
}

```

Then, you’ll need to update every instance of `check_dependencies` to look like this.

`check_dependencies "readlink" "dirname" "ip" "docker" "docker compose"`

To easily find instances of `check_dependencies` or `docker-compose`, use grep.

`grep -r "docker-compose"`

You’ll have to modify the `check_dependencies` function and each time it’s called in the `app`, `configure`, and `start` scripts.

You’ll also need to check other scripts for calls to `docker-compose` and replace it with `docker compose` like in `/scripts/app` and `/scripts/stop`. Probably a good idea to research if there’s a way to create an alias for `docker compose` using `docker-compose` so you don’t have to do that, but so far it’s working for me and Bitcoin app is installed.

---

<div class="post-metadata">

**Author:** ![hey\_its\_wilson](https://avatars.discourse-cdn.com/v4/letter/h/e36b37/32.png) [@hey\_its\_wilson](https://community.umbrel.com/u/hey_its_wilson)\
**Post date:** [June 26, 2023, 8:54pm UTC](https://community.umbrel.com/t/docker-compose-vs-docker-compose/6732/4 "2023-06-26T20:54:10Z")

</div>

When attempting to update Umbrel, I learned that it overwrites the modified files above. I’m currently researching a way to update without it modifying those files.

A better solution would be to somehow link “docker-compose” with “docker compose”.
