Docker está instalado pero Docker Compose no lo está? ¿Por qué?


He instalado docker en centos 7. al ejecutar los siguientes comandos,

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

NOTA: helloworld se ejecuta correctamente y no hay problemas.

Sin embargo, cuando intento ejecutar docker-compose (docker-compose.yml existe y es válido) me da el error solo en Centos (la versión de Windows funciona bien para el archivo docker-compose)

/usr/local/bin/docker-compose: line 1: {error:Not Found}: command not found
Author: mahen3d, 2016-04-18

9 answers

También necesita instalar Docker Compose. Véase el manual . Estos son los comandos que necesita para ejecutar

$ sudo curl -L "https://github.com/docker/compose/releases/download/1.22.0/docker-compose-$(uname -s)-$(uname -m)"  -o /usr/local/bin/docker-compose
$ sudo mv ./docker-compose /usr/bin/docker-compose
$ sudo chmod +x /usr/bin/docker-compose
 123
Author: Daniel Stefaniuk,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-09-27 09:30:47

Estoy instalando en una Raspberry Pi 3, con Raspbian 8. El método curl falló para mí (obtuve un error line 1: Not: command not found al preguntar por docker-compose --version) y la solución de @sunapi386 parecía un poco anticuada, así que probé esto que funcionó:

Primero limpia las cosas de los esfuerzos anteriores:

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

Luego siga esta guía re docker-compose en Rpi:

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

Para mí (el 1 de noviembre de 2017) esto resulta en la siguiente respuesta a docker-compose --version:

docker-compose version 1.16.1, build 6d1ac219
 12
Author: Scott Veirs,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-11-01 18:18:43

Estoy instalando en una Raspberry Pi 3, en Raspbian OS. El método curl no se resolvió con una respuesta válida. También decía {error: Not Found}, eché un vistazo a la URL https://github.com/docker/compose/releases/download/1.11.2/docker-compose-Linux-armv7l y no era válida. Supongo que no había construcción allí.

Esta guía https://github.com/hypriot/arm-compose funcionó para mí.

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

 4
Author: sunapi386,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-03-25 03:48:11

En primer lugar, compruebe si docker-compose está instalado,

$ docker-compose -v

Si no está instalado, consulte la guía de instalación https://docs.docker.com/compose/install/ Si está instalado dar permiso ejecutable al binario.

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

Compruebe si esto funciona.

 1
Author: ASON,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-04-18 06:16:59

Refiriéndose a las respuestas dadas anteriormente (no tengo suficiente reputación para referirme por separado a soluciones individuales, por lo tanto, lo hago colectivamente en este lugar), quiero complementarlas con algunas sugerencias importantes:

  1. Docker-compose puede instalar desde el repositorio (si tiene este paquete en el repositorio, si no puede agregar al sistema un repositorio con este paquete) o descargar binario con use curl-totourial en el sitio web oficial del proyecto-src: https://docs.docker.com/compose/install /

  2. Docker-compose from the repository está en la versión 1.8.0 (al menos para mí). Esta versión docker-compose no admite archivos de configuración en la versión 3. Solo tiene soporte version = https://docs.docker.com/compose/compose-file / compose-versioning /. Desde mi propia experiencia con el trabajo en el docker I recomienda usar configuraciones de contenedores en la versión 3: hay más opciones de configuración que en las versiones https://docs.docker.com/compose/install/

  3. Cuando intenta eliminar manualmente el antiguo docker-compose binarios, puede tener información sobre el archivo que falta en la ruta predeterminada /usr/local/bin/docker-compose. En mi caso, docker-compose estaba en la ruta predeterminada / usr / bin / docker-compose. En este caso, le sugiero que use la herramienta buscar en su sistema para encontrar el archivo binario docker-compose - example sintaxis: sudo find / -name 'docker-compose'. Me ayudó. Gracias a esto, eliminé la antigua versión docker-compose y agregué la estable al sistema-Utilizo la herramienta curl para descargar el archivo binario docker-compose, poniéndolo en el camino correcto y dándole los permisos correctos-todo este proceso ha sido descrito en los posts anteriores.

Saludos, Adam

 1
Author: Adam Wądołkowski,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-06-15 11:42:01

Instalar docker no significa que haya instalado docker-compose. Tiene como prerrequisitos que ya ha instalado el motor docker que ya ha hecho. Después de eso, puede instalar docker-compose siguiendo este enlace para Centos 7.

 0
Author: lvthillo,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-04-18 06:01:49

Docker-compose es actualmente una herramienta que utiliza docker(-engine) pero no está incluida en la distribución de docker.

Aquí está el enlace al manual de instalación: 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 cambiará en el futuro)

 0
Author: Patrick Cornelissen,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-10-06 11:06:55

Si instalaste docker agregando su repositorio oficial a tu lista de repositorios, como:

curl -L https://nightly.odoo.com/odoo.key | apt-key add -
sudo echo "deb http://nightly.odoo.com/10.0/nightly/deb/ ./" >> /etc/apt/sources.list.d/odoo.list
sudo apt-get update && sudo apt-get install odoo

Solo hazlo:

$ sudo apt-get install docker-compose

En caso de distribución / Fedora basada en RHEL:

$ sudo dnf install docker-compose
 0
Author: Gayan Weerakutti,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-01-02 07:36:31

Sugiero usar el pkg oficial en Mac. Supongo que docker-compose ya no está incluido con docker por defecto: https://docs.docker.com/toolbox/toolbox_install_mac /

 0
Author: R Claven,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-01-09 21:33:34