Respuestas:
El dockercli se usa al administrar contenedores individuales en un motor acoplable. Es la línea de comando del cliente para acceder a la api docker daemon.
El docker-composecli se puede usar para administrar una aplicación de contenedores múltiples. También mueve muchas de las opciones que ingresaría en el docker runcli al docker-compose.ymlarchivo para una reutilización más fácil. Funciona como un "script" front-end en la parte superior de la misma API de Docker utilizada docker, por lo que puede hacer todo lo que docker-composehace con dockercomandos y una gran cantidad de scripts de shell. Consulte esta documentación en docker-compose para obtener más detalles.
Actualización para el modo Enjambre
Desde que se publicó esta respuesta, docker ha agregado un segundo uso de los archivos docker-compose.yml. Comenzando con el formato yml de la versión 3 y docker 1.13, puede usar el yml con docker-compose y también para definir una pila en el modo enjambre de docker. Para hacer esto último, debe usar en docker stack deploy -c docker-compose.yml $stack_namelugar de docker-compose upy luego administrar la pila con dockercomandos en lugar de docker-composecomandos. El mapeo es uno por uno entre los dos usos:
Para obtener más detalles sobre el modo enjambre, consulte la documentación del modo enjambre de Docker .
docker gestiona contenedores individuales
docker-compose gestiona múltiples aplicaciones de contenedores
El uso de docker-compose requiere 3 pasos:
docker-compose uppara iniciar y ejecutar la aplicaciónA continuación se muestra un ejemplo de docker-compose.yml tomado de los documentos de docker :
services:
web:
build: .
ports:
- "5000:5000"
volumes:
- .:/code
- logvolume01:/var/log
links:
- redis
redis:
image: redis
volumes:
logvolume01: {}
build: .en lawebsección apunta a la ubicación del Dockerfile creado en el paso 1.