tag - ¿Cuál es la diferencia entre Docker Service y Docker Container?
docker terms (4)
¿Cuándo utilizamos un comando de creación de servicio de ventana acoplable y cuándo usamos un comando de ejecución de ventana acoplable?
Docker Run iniciará un solo contenedor.
Con el servicio docker usted gestiona un grupo de contenedores (desde la misma imagen). Puede escalarlos (iniciar varios contenedores) o actualizarlos.
Es posible que desee leer "el servicio de la ventana acoplable es la nueva ejecución de la ventana acoplable "
Según estas diapositivas, "crear servicio de ventana acoplable" es como una ejecución de ventana acoplable "evolucionada". Necesita crear un "servicio" si desea implementar un contenedor en Docker Swarm
Los servicios de Docker son como "planos" para contenedores. Puede, por ejemplo, definir a un trabajador simple como un servicio y luego escalar ese servicio a 20 contenedores para pasar por una cola realmente rápido. Después, se reduce ese servicio nuevamente a 3 contenedores. Además, a través de Swarm, estos contenedores podrían implementarse en diferentes nodos de tu swarm.
Pero sí, también recomiendo leer la documentación, tal como sugirió @Tristan.
En resumen: el servicio Docker se usa principalmente cuando configuró el nodo maestro con el enjambre Docker para que los contenedores de la ventana acoplable se ejecuten en un entorno distribuido y se pueda administrar fácilmente.
Docker run: el comando de ejecución de la ventana acoplable primero crea una capa de contenedor grabable sobre la imagen especificada y luego la inicia utilizando el comando especificado.
Es decir, la ejecución de la ventana acoplable es equivalente a la API / containers / create then / containers / (id) / start
fuente: https://docs.docker.com/engine/reference/commandline/run/#parent-command
Servicio Docker: El servicio Docker será la imagen de un microservicio en el contexto de una aplicación más grande. Los ejemplos de servicios pueden incluir un servidor HTTP, una base de datos o cualquier otro tipo de programa ejecutable que desee ejecutar en un entorno distribuido.
Cuando creas un servicio, especificas qué imagen de contenedor usar y qué comandos ejecutar dentro de los contenedores en ejecución. También define opciones para el servicio que incluyen:
- El puerto donde el enjambre hará que el servicio esté disponible fuera del enjambre.
- una red superpuesta para que el servicio se conecte a otros servicios en el enjambre
- CPU y límites de memoria y reservas.
- una política de actualización continua
- El número de réplicas de la imagen para ejecutar en el enjambre.
fuente: https://docs.docker.com/engine/swarm/how-swarm-mode-works/services/#services-tasks-and-containers