docker-compose - run - docker compose version
La versión en "./docker-compose.yml" no es compatible. Es posible que vea este error porque está utilizando la versión incorrecta del archivo Compose (7)
Aquí está mi archivo docker-compose.yml:
version: ''3.1''
services:
a:
image: tutum/hello-world
b:
image: tutum/hello-world
secrets:
id: my_password
Si ejecuto
$ docker-compose-up
obtengo esto:
La versión en "./docker-compose.yml" no es compatible. Es posible que vea este error porque está utilizando la versión incorrecta del archivo Compose.
Mi versión docker-compose:
$ docker-compose --version
docker-compose version 1.11.0, build 6de1806
¿Qué pasa aquí? ¿No debería mi versión docker-compose admitir v3.1 de la especificación docker-compose.yml (de acuerdo con las notas de la versión , sí lo hace)?
Estás haciendo todo bien y debería funcionar. Pero hubo un error en docker-compose 1.11.0 que no reconoció el formato de archivo 3.1 como válido. (3.0 obras).
Ya hay una nueva versión de docker-compose (1.11.1) que incluye la corrección de errores:
Corrección de errores
Se corrigió un error por el cual el analizador de redacción no reconocía el formato de archivo 3.1 como válido
Por lo tanto, recomendaría actualizar su versión docker-compose si desea utilizar el formato de archivo 3.1.
Por el momento, la forma más segura de actualizar docker-compose es eliminarlo y reinstalarlo.
rm /usr/local/bin/docker-compose
Reinstalar:
curl -L https://github.com/docker/compose/releases/download/1.11.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
docker-compose --version
docker-compose version 1.11.1, build 7c5d5e4
Ahora ya no hay un error en el formato de archivo. (No probé con tu .yml).
docker-compose up
Starting compose_a_1
Starting compose_b_1
He resuelto el problema actualizando docker-compose.
Sigue los pasos a continuación para actualizar docker-compose en ubuntu16.04
paso 1:
$which docker-compose
/usr/bin/docker-compose
paso 2:
$sudo rm /usr/bin/docker-compose
paso 3:
curl -L https://github.com/docker/compose/releases/download/1.20.0/docker-compose-`uname -s`-`uname -m` -o /usr/bin/docker-compose
etapa 4:
chmod +x /usr/bin/docker-compose
Hice
docker-compose --version
antes de implementar la solución de lvthillo y todavía aparecían versiones obsoletas.
Resultó que necesitaba limpiar la lista de hash que tenía mi caparazón de bash.
hash -r
... espero que sea útil para otra persona
No podemos decírtelo sin ver el error particular, primero verifíquelo ejecutando este comando
docker build .
cuando recibiste el error, búscalo en google en mi caso, fue el error de permiso cuando lo probé con sudo funcionó.
Espero que te ayude
Si usa linux / ubuntu , esto puede ser obvio, pero tenga cuidado de ejecutarlo como root, por ejemplo
docker-compose -v
Da
docker-compose version 1.8.0, build unknown
vs
sudo docker-compose -v
Da
docker-compose version 1.17.1, build 6d101fb
También asegúrese de que docker-compose y docker-machine estén actualizados como indica @lvthillo
intente desinstalar la versión anterior y reinstalar.
sudo apt remove docker-compose
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 chmod +x /usr/local/bin/docker-compose
reboot
debería imprimir
docker-compose --version
docker-compose version 1.22.0, build 1719ceb
En osx 10.12.6 sierra
Pasos para v1.22 o superior
Tuve un problema específico / incompatibilidad donde no quería actualizar completamente Docker. Actualmente estoy atascado en Docker 17.06.0-ce-mac18. Así que simplemente quería actualizar docker-compose y nada más.
Mis pasos
-
Identificar la ubicación de docker-compose:
which docker-compose
-
Identifique la versión docker-compose:
docker-compose --version
=docker-compose version 1.14.0, build c7bdf9e
-
copia de seguridad de docker-compose anterior:
mv /usr/local/bin/docker-compose /usr/local/bin/docker-compose-bak
-
reemplácelo con
curl -L https://github.com/docker/compose/releases/download/1.22.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
- Si necesita determinar la última versión, simplemente consulte https://github.com/docker/compose/releases y reemplace la versión anterior con la última.
-
verificar versión:
docker-compose --version
=docker-compose version 1.22.0, build f46880f