Docker Compose fails to run with the following error:
user@hostname:~$ sudo curl -L "https://github.com/docker/compose/releases/download/1.25.5/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 9 100 9 0 0 38 0 --:--:-- --:--:-- --:--:-- 38
user@hostname:~$ sudo chmod +x /usr/local/bin/docker-compose
user@hostname:~$ docker-compose
/usr/local/bin/docker-compose: line 1: Not: command not found
Output of docker-compose version
Unable to run docker-compose
Output of docker version
user@hostname:~$ docker version
Client: Docker Engine - Community
Version: 19.03.9
API version: 1.40
Go version: go1.13.10
Git commit: 9d98839
Built: Fri May 15 00:25:48 2020
OS/Arch: linux/arm64
Experimental: false
Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.40/version: dial unix /var/run/docker.sock: connect: permission denied
Output of docker-compose config
(Make sure to add the relevant -f
and other flags)
Unable to run docker-compose
The software crashes when trying to run it.
The software would run successfully.
/usr/local/bin/docker-compose: line 1: Not: command not found
Running OS: Ubuntu Server 20.04 LTS
Also before someone says "it says the command isn't found, you need to download and install the binary" that error is from RUNNING the file. This is the output if the file doesn't exist:
user@hostname:~$ sudo rm /usr/local/bin/docker-compose
user@hostname:~$ docker-compose
Command 'docker-compose' not found, but can be installed with:
sudo apt install docker-compose
This is not a bug in docker-compose
Check your PATH
variable and make sure /usr/local/bin
is in there
sudo echo $PATH
If not, add it to /root/.bashrc or something
Also I've always had to use sudo docker-compose
which probably makes sense if you need sudo permissions to access docker itself
I KNEW someone would say that, which is why I made the above comment. It is finding the downloaded file, the error is with running it, not with not finding it. Please read what I previously said.
Hahaha! My bad
Yeah I misread that
Right, it says line 1: Not: Command not found
so its happening in the code
What OS and architecture are you on? On my machine it works on a fresh debian VM without docker.
EDIT:
Its not this issue, since its actually downloading on your machine it seems...I wonder if docker-compose requires any external libraries that might be missing on your machine
Ah, that does seem to be the same issue. Let me try the steps in the answer to see if that fixes it.
Thanks!
The OS is Ubuntu Server 20.04 and architecture is ARM64.
EDIT: Actually after running uname -m
it comes out as aarch64
. Which is the same as ARM64, just the linux-y way of saying it.
Yeah, unfortunately doesnt seem like they post binaries for arm.
I have no idea how hard it would be to compile for source, but seems like they do support at least arm32, although someone had trouble doing so
I did find this. Its kind of old though
Also, may I suggest you change the title to "Please support ARM64 binary downloads" or something?
Changed the name, thanks! I had no idea it wasn't supported since there wasn't a note for compatibility on the documentation.
Same issue, I am trying to install it on my Raspberry Pi - *_3 - Raspbian OS_
Edit 2: Managed to bypass it using https://github.com/AppTower/docker-compose
Got it from the discussion here: https://github.com/docker/compose/issues/6831#issuecomment-568815378
Hey guys, same issue here. If you want to make sure it's the same issue just run cat /usr/local/bin/docker-compose
you must see "Not Found".
@CorruptComputer Did you solve this issue ?
I installed docker-compose on centos7-arm64,
CMD
sudo yum install -y libffi libffi-devel openssl-devel python3 python3-pip python3-devel
sudo pip3 install docker-compose
If have some error,run it twice!
Hi, yes we currently recommend the pip install method for Arm64. I will see if we can get arm64 binaries built as well.
Hi, yes we currently recommend the pip install method for Arm64. I will see if we can get arm64 binaries built as well.
This would be great, as it takes long time to build with the pip install on some boards. We are currently maintaining a fork to get such binaries in https://github.com/dappnode/compose/releases/tag/1.25.5
@MaximeAubanel I did not, I ended up giving up on Docker and just installing the applications I was trying to run manually. Hopefully they support this someday, but for now its just not possible for me. Since one of the apps I use specifically says not to use the pip package for docker-compose, as it does not work.
@CorruptComputer I made it works installing it with apt-get:
sudo apt-get install docker-compose
Note that apt-get install docker-compose
may get a very, very old version of docker-compose. On all Ubuntu before 20.04 and all Debian even with Buster you get old versions. Debian Buster gets 1.21.0
The sudo pip3 install docker-compose
technique works on Debian Buster arm64 (Raspberry Pi OS 64-bit).
The pip technique isn't mentioned in https://docs.docker.com/compose/install/#install-compose-on-linux-systems and only way below the fold on that page, discussing "pre-release" versions.
This can be done by pip.
but offering an Arm-Release by official will be very helpful.
the pip version is a python script, with so many dependencies:
Installing collected packages: websocket-client, pycparser, cffi, bcrypt, pynacl, paramiko, docker, cached-property, distro, python-dotenv, PyYAML, texttable, attrs, pyrsistent, zipp, importlib-metadata, jsonschema, dockerpty, docopt, docker-compose
Successfully installed PyYAML-5.3.1 attrs-20.3.0 bcrypt-3.2.0 cached-property-1.5.2 cffi-1.14.3 distro-1.5.0 docker-4.3.1 docker-compose-1.27.4 dockerpty-0.4.1 docopt-0.6.2 importlib-metadata-2.0.0 jsonschema-3.2.0 paramiko-2.7.2 pycparser-2.20 pynacl-1.4.0 pyrsistent-0.17.3 python-dotenv-0.15.0 texttable-1.6.3 websocket-client-0.57.0 zipp-3.4.0
we can make this simple and clean.
Most helpful comment
Hi, yes we currently recommend the pip install method for Arm64. I will see if we can get arm64 binaries built as well.