Я установил докер на CentOS 7, выполнив следующие команды:

curl -sSL https://get.docker.com/ | sh
systemctl enable docker && systemctl start docker
docker run hello-world

NOTE: helloworld runs correctly and no issues.

однако, когда я пытаюсь запустить docker-compose (docker-compose.yml существует и действителен), он выдает ошибку только на CentOS (версия Windows отлично работает для файла docker-compose)

/usr/local/bin/docker-compose: line 1: {error:Not Found}: command not found

mahen3d

Ответы (16)

Также необходимо установить Docker Compose. См. Руководство . Вот команды, которые вам нужно выполнить

sudo curl -L "https://github.com/docker/compose/releases/download/1.26.0/docker-compose-$(uname -s)-$(uname -m)"  -o /usr/local/bin/docker-compose
sudo mv /usr/local/bin/docker-compose /usr/bin/docker-compose
sudo chmod +x /usr/bin/docker-compose

docker-compose в настоящее время является инструментом, который использует docker (-engine), но не включен в дистрибутив docker.

Вот ссылка на инструкцию по установке: https://docs.docker.com/compose/install/

TL; DR:

curl -L https://github.com/docker/compose/releases/download/1.8.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
chmod +x /usr/bin/docker-compose

(1.8.0 изменится в будущем)

Я на debian, нашел что-то вполне естественное:

apt-get install docker-compose

, и он выполнил свою работу (не тестировалось на centos)

Ссылаясь на приведенные выше ответы (у меня недостаточно репутации, чтобы отдельно ссылаться на отдельные решения, поэтому я делаю это здесь вместе), я хочу дополнить их некоторыми важными предложениями:

  1. docker-compose вы можете установить из репозитория (если у вас есть этот пакет в репозитории, если нет, вы можете добавить в систему репозиторий с этим пакетом) или скачать двоичный файл с использованием curl - totourial на официальном сайте проекта - src: https://docs.docker.com/compose/install /

  2. docker-compose из репозитория находится в версии 1.8.0 (по крайней мере, у меня). Эта версия для создания докеров не поддерживает файлы конфигурации в версии 3. Она поддерживает только версию = <2. На официальном сайте проекта есть рекомендация использовать конфигурацию контейнера в версии 3 - src: https://docs.docker.com/compose/compose-file / compose-versioning /. Исходя из собственного опыта работы в докере, я рекомендую использовать конфигурации контейнера в версии 3 - вариантов конфигурации больше, чем в версиях <3. Если вы хотите использовать конфигурации конфигурации в версии 3, вам необходимо обновить / установить docker-compose до версии не ниже 1.17 - желательно последней стабильной версии. На официальном сайте проекта подробно описано, как это сделать - src: https://docs.docker.com/compose/install/

  3. при попытке вручную удалить старые двоичные файлы docker-compose вы можете получить информацию об отсутствующем файле в пути по умолчанию / usr / local / bin / docker-compose. В моем случае docker-compose находился в пути по умолчанию / usr / bin / docker-compose. В этом случае я предлагаю вам использовать инструмент поиска в вашей системе, чтобы найти двоичный файл docker-compose - пример синтаксиса: sudo find / -name 'docker-compose'. Мне это помогло. Благодаря этому я удалил старую версию docker-compose и добавил стабильную в систему - я использую инструмент curl для загрузки двоичного файла docker-compose, помещая его по правильному пути и давая ему правильные разрешения - весь этот процесс описано в постах выше.

С уважением, Адам

Если docker-compose уже существует в / usr / local / bin:

ls -alt /usr/local/bin/ | grep docker-compose
> lrwxr-xr-x    1 root     wheel        77 Mar 11 10:39 docker-compose -> /Applications/Docker.app/Contents/Resources/bin/docker-compose/docker-compose

Затем обновите свой .bash_profile Path следующим / usr / local / bin в конце:

export PATH="$HOME/.yarn/bin:$HOME/.config/yarn/global/node_modules/.bin:$PATH:/usr/local/bin"

Выполнить:

source ~/.bash_profile

и проверьте:

echo $PATH
> ...
which docker-compose
> /usr/local/bin/docker-compose
docker-compose

В Linux вы можете загрузить двоичный файл Docker Compose со страницы выпуска репозитория Compose на GitHub. Следуйте инструкциям по ссылке, которые включают запуск команды curl в вашем терминале для загрузки двоичных файлов. Эти пошаговые инструкции также приведены ниже.

1: Выполните эту команду, чтобы загрузить текущую стабильную версию Docker Compose:

sudo curl -L "https://github.com/docker/compose/releases/download/1.26.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

Чтобы установить другую версию Compose, замените 1.26.2 версией Compose, которую вы хотите использовать.

2: применить разрешения для исполняемого файла к двоичному файлу:

sudo chmod +x /usr/local/bin/docker-compose

Примечание. Если после установки выполнить команду docker-compose не удается, проверьте твой путь. Вы также можете создать символическую ссылку на / usr / bin или любой другой другой каталог на вашем пути.

Tried to install docker-compose on CentOS using curl per docker docs (for Linux). After those steps it returned an error

docker-compose -v
/usr/local/bin/docker-compose: line 1: Not: command not found

Забавная штука docker-compose файл буквально содержит только «Not Found» в строке 1 (это должен быть двоичный файл)

cat /usr/local/bin/docker-compose
Not Found

Это означает, что ссылка на github, с которой я пытался скрутиться, не существует. Моя неудачная ссылка была:

sudo curl -L "https://github.com/docker/compose/releases/download/2.2.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

Запуск uname -s и uname -m локально вы можете увидеть, что нужно добавить к URL-адресу загрузки

uname -s
Linux
uname -m
x86_64

Пробуем адрес в браузере https://github.com/docker/compose/releases/download/2.2.2/docker-compose-linux-x86_64 показывает, что страница не найдена.

Проблема, что они добавили "v" в версию, как в v2.2.2. Таким образом, URL-адрес загрузки должен иметь вид «v». https://github.com/docker/compose/releases/download/v2.2.2/docker-compose-linux-x86_64. Их релизы: https://github.com/docker/compose/releases/

Это сработало (внимание v2.2.2)

sudo curl -L "https://github.com/docker/compose/releases/download/v2.2.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
docker-compose -v
Docker Compose version v2.2.2

Я предлагаю использовать официальный pkg на Mac. Думаю, docker-compose больше не входит в docker по умолчанию: https://docs.docker.com/toolbox/toolbox_install_mac/

Приведенные выше решения у меня не сработали. Но я обнаружил, что это сработало:

sudo apt-get update -y && sudo apt-get install -y python3-pip python3-dev
sudo apt-get remove docker docker-engine docker.io
curl -fsSL get.docker.com -o get-docker.sh
sudo sh get-docker.sh
sudo pip3 install docker-compose
#sudo docker-compose -f docker-compose-profess.yml pull ofw
sudo usermod -a -G docker $USER
sudo reboot

просто используйте brew:

brew install docker-compose

Если вы хотите автоматически установить последнюю версию docker-compose, просто запустите:

export docker_compose_latest=$(curl -Ls -o /dev/null -w %{url_effective}  https://github.com/docker/compose/releases/latest  | grep -o '[^/]*$')
curl -L "https://github.com/docker/compose/releases/download/${docker_compose_latest}/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose

Будет установлена ​​последняя версия docker-compose.Официальный способ установки нужна версия полученная своими руками. Но я написал сценарий, который автоматически загружает для вас последнюю версию.

Я устанавливаю на Raspberry Pi 3 на Raspbian OS. Метод curl не разрешил правильный ответ. Также было написано {error: Not Found}, я взглянул на URL https://github.com/docker/compose/releases/download/1.11.2/docker-compose-Linux-armv7l, и он оказался недействительным. Думаю, сборки там не было.

Это руководство https://github.com/hypriot/arm-compose работало для меня.

sudo apt-get update
sudo apt-get install -y apt-transport-https
echo "deb https://packagecloud.io/Hypriot/Schatzkiste/debian/ jessie main" | sudo tee /etc/apt/sources.list.d/hypriot.list
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 37BBEE3F7AD95B3F
sudo apt-get update
sudo apt-get install docker-compose

сначала проверьте, установлен ли docker-compose,

$ docker-compose -v

Если он не установлен, обратитесь к руководству по установке https://docs.docker.com/compose/install/ Если установлено, дайте исполняемое разрешение двоичному файлу.

$ chmod +x /usr/local/bin/docker-compose

проверьте, работает ли это.

Если вы установили докеры, добавив их официальный репозиторий в свой список репозиториев, например:

$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
$ sudo add-apt-repository \
   "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
   $(lsb_release -cs) \
   stable"

Просто сделайте:

$ sudo apt-get install docker-compose

В случае дистрибутива на основе RHEL / Fedora:

$ sudo dnf install docker-compose

Установка docker не означает, что вы установили docker-compose. В качестве предварительных условий вы уже установили движок докеров, который вы уже установили. После этого вы можете установить docker-compose по этой ссылке для Centos 7.

Я устанавливаю на Raspberry Pi 3 с Raspbian 8. Метод curl для меня не удался (получена строка 1: Not: команда не найдена ошибка при запросе docker-compose --version), а решение @ sunapi386 показалось немного устаревшим, поэтому я попробовал это, и оно сработало:

Первая очистка от предыдущих попыток:

sudo rm /usr/local/bin/docker-compose
sudo pip uninstall docker-compose

Затем следуйте этому руководству по повторной компоновке в докере на Rpi:

sudo apt-get -y install python-pip
sudo pip install docker-compose

Для меня (1 ноября 2017 г.) это приводит к следующему ответу на docker-compose --version:

docker-compose version 1.16.1, build 6d1ac219

2022 WebDevInsider