Estoy tratando de ejecutar la imagen del nanoservidor en un servidor de Windows 2016 (instancia ec2 o Azure VM) con este comando:
docker run -d --name nanoms microsoft/nanoserver:latesteditar: en realidad no es solo nanoserver, tengo el mismo problema al ejecutar microsoft/windowsservercore:latest.
Pero si luego ejecuto ( docker ps -a ), muestra el estado como Salido. Docker registra nanoms : solo muestra "c:>" (por lo que no hay errores)
Si uso -it en lugar de -d , entonces muestra algunas 'cosas' y se bloquea hasta que presiono ctrl-C, ¡pero en realidad ha comenzado y puedo 'iniciar sesión'!
'cosas' mostradas:
[2J[H[1H[37;40m[K[2H[K[3H[K[4H[K[5H[K[6H[K[7H[K[8H[K[9H[K[10H[K[11H [K[12H[K [13H[K[14H[K[15H[K[16H[K[17H[K[18H[K[19H[K[20H[K[21H[K[22H[K[23H[K [24H[K[25H[K [1;1HMicrosoft Windows [Versión 10.0.14393]] (c) 2016 Microsoft Corporation. Reservados todos los derechos.
edición 2: Las 'cosas' anteriores suceden cuando ejecuto el comando en powershell. Si ejecuto el comando en el indicador de cmd y luego uso -se conecta con éxito. PERO -d todavía siempre sale.
¿Hay algo que estoy haciendo mal aquí? ¿Hay algo especial con Windows Server 2016 y Docker que signifique que -d no funciona? Comenzar un contenedor con -d es algo fundamental, creo...
He intentado reiniciar el servidor, mismo resultado.
El nanoservidor es una imagen basada en 10.0.14393.693 (.823 tuvo algún problema).
=================
Para recrear el problema:
Mi expectativa es que debe estar activo. ¿Está mal mi expectativa?
sí, tu expectativa es incorrecta :)
El contenedor debe estar ejecutando algo. Por ejemplo, el símbolo del sistema que crea cuando ejecuta con los parámetros -it. Especificar explícitamente popwershell probablemente funcionará mejor para usted...
docker run --name nanoms microsoft/nanoserver:latest -it powershellEl contenedor Nanoserver por defecto ejecuta CMD solo agrega -d -it y listo.
docker run -d -it mcr.microsoft.com/windows/nanoserver:1803