- Este debate tiene 7 respuestas, 2 mensajes y ha sido actualizado por última vez el hace 4 años, 9 meses por
Cristina Nicolàs.
Crear Contenedor Docker en Window 10 Pro
-
ImakParticipanteImakHola,
En cuanto ví los vídeos de Docker me puse manos a la obra para aplicarlo en mi día a día por las ventajas que conlleva. El problema es que tras unos días intentando instalar un contenedor docker con una imagen de nav2018cu14 y no consiguirlo, empiezo a desesperarme.
Me instalé Docker desktop, indiqué en su configuración que crease contenedores windows y por último, desde powershell he ejecutado el comando New-NavContainer con los parámetros del vídeo pero adaptados a mi caso.Te pongo a continuación los mensajes que va mostrando la consola hasta el error, durante el intento de creación del contenedor.
He intentado solucionarlo por mi parte consultado en la web, pero no he visto nada que valiese de ayuda.
NavContainerHelper is version 0.5.0.2
Host is Microsoft Windows 10 Pro – ltsc2019
Docker Client Version is 18.09.1
Docker Server Version is 18.09.1
Using image microsoft/dynamics-nav:2018-cu14-es-ltsc2019
Creating Nav container NAV2018CU14
Using license file E:\NAV\Licencias\Tipsa_2018_20200731.flf
Version: 11.0.27667.0-es
Generic Tag: 0.0.9.1
Container OS Version: 10.0.17763.253 (ltsc2019)
Host OS Version: 10.0.17763.292 (ltsc2019)
Using process isolation
Creating container NAV2018CU14 from image microsoft/dynamics-nav:2018-cu14-es-ltsc2019
ec8f20bf39678ca8d79ceb53923e9a105694a0904aeec96e6edaf2e1d6463ba2
Waiting for container NAV2018CU14 to be ready
Initializing…
Starting Container
Hostname is NAV2018CU14
PublicDnsName is NAV2018CU14
WARNING: DNS resolution not working from within the container.
Using Windows Authentication
Starting Local SQL Server
Starting Internet Information Server
Modifying Service Tier Config File with Instance Specific Settings
Starting Service Tier
Using license file ‘c:\run\my\license.flf’
Import License
Creating DotNetCore Web Server Instance
Creating http download site
Creating Windows user PORTATIL-IMAK\imak
Setting SA Password and enabling SA
Creating SUPER user
The Windows account could not be mapped to a valid security identifier (SID).
at <ScriptBlock>, C:\Run\SetupNavUsers.ps1: line 13
at <ScriptBlock>, C:\Run\navstart.ps1: line 175
at <ScriptBlock>, C:\Run\start.ps1: line 121
at <ScriptBlock>, <No file>: line 1Error
Initializing…
Starting Container
Hostname is NAV2018CU14
PublicDnsName is NAV2018CU14
WARNING: DNS resolution not working from within the container.
Using Windows Authentication
Starting Local SQL Server
Starting Internet Information Server
Modifying Service Tier Config File with Instance Specific Settings
Starting Service Tier
Using license file ‘c:\run\my\license.flf’
Import License
Creating DotNetCore Web Server Instance
Creating http download site
Creating Windows user PORTATIL-IMAK\imak
Setting SA Password and enabling SA
Creating SUPER user
The Windows account could not be mapped to a valid security identifier (SID).
at <ScriptBlock>, C:\Run\SetupNavUsers.ps1: line 13
at <ScriptBlock>, C:\Run\navstart.ps1: line 175
at <ScriptBlock>, C:\Run\start.ps1: line 121
at <ScriptBlock>, <No file>: line 1
Initialization of container NAV2018CU14 failed
En C:\Program Files\WindowsPowerShell\Modules\navcontainerhelper\0.5.0.2\ContainerHandling\Wait-NavContainerReady.ps1: 45 Carácter: 17
+ … throw “Initialization of container $containerName failed” …
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : OperationStopped: (Initialization …2018CU14 failed:String) [], RuntimeException
+ FullyQualifiedErrorId : Initialization of container NAV2018CU14 failedPor otro lado, desde la consola de PS ejecuto docker info y me indica que existe un contendor ejecutándose, que es el NAV2018CU14. Está claro que no se ha creado como es debido, ya que el proceso del PS se ha visto interrumpido y además no se me han creado los acceso directos a dynamicsNAV.
Estoy bastante perdido, creo que el problema está en eso de ‘The Windows account could not be mapped to a valid security identifier (SID)’, aunque no estoy seguro. Pero como decía, después de intentarlo unas cuantas veces y consultar con google, no he sido capaz de resolverlo. Cualquier ayuda será bienvenida
gracias y un saludo
11 febrero 2019 a las 12:16 #8381
Cristina NicolàsSuperadministradorCristina NicolàsHola,
No sé si te podré ser de demasiada ayuda porque este caso no me ha pasado.
Al crear un contenedor Docker con un NAV con autenticación Windows, te pide las credenciales Windows.
Le tienes que poner Usuario y Contraseña.
Lo que hace después es, dentro del contenedor Docker, crear un nuevo usuario windows, con las credenciales que le has pasado. Después de algún modo hace el mapping entre el usuario Windows del host y el usuario Windows del contenedor. Porque después cuando abres NAV ya no te pide nada, las credenciales han funcionado.Aquí entiendo que está dando un error en el momento de hacer el mapping entre el usuario Windows del host y el usuario Windows del contenedor.
Quizá es una pregunta muy tonta, y no lo sé porque no me ha pasado, pero…
Es posible que al pedirte el usuario y contraseña al crear el contenedor, hayas escrito mal la contraseña, y por eso después de error al hacer el mapping?No sé, seria por probar algo. Pero ya digo, este error no me ha pasado y por tanto no sé realmente como solucionarlo.
Un saludo,
Cristina Nicolàs11 febrero 2019 a las 12:27 #8383
ImakParticipanteImakHola Cristina,
no creo que el problema sea que no haya escrito bien mis credenciales windows al crear el contenedor, lo digo porque lo he intentado al menos 5 veces y sería bastante raro que las hubiera escrito mal en todos los intentos.
En fin, gracias por tu respuesta de todas maneras.
Si consigo crear un contenedor te lo haré saber aunque la verdad es que ahora mismo no sé por dónde tirar.
Un saludo
11 febrero 2019 a las 17:52 #8397
ImakParticipanteImakHola de nuevo Cristina,
he conseguido por fin crear dos contenedores, uno con una imagen de NAV2018CU14 y otro con un BC3. Aparentemente ha ido bien, se han creado los correspondientes accesos directos, etc…
El problema era que la contraseña del usuario de windows que tengo no cumplía con los estándares de seguridad para contraseñas. Lo de que incluya mayúsculas, minúsculas y números. Una vez cambiada la contraseña del usuario windows me ha creado los contenedores sin problema aparente.
Ahora el problema es que no funcionan ni el entorno de desarrollo, ni el cliente RTC, ni el cliente web. Mi gozo en un pozo, me las prometía muy felices tras conseguir crear los contenedores.
¿Tienes algún consejo que darme para averiguar qué está pasando ahora?
Gracias y un saludo
15 febrero 2019 a las 16:33 #8569
Cristina NicolàsSuperadministradorCristina NicolàsHola imak,
Gracias por la explicación de las contraseñas. Esta no la sabía.
Qué problema tienes al abrir los distintos clientes?
A mi al principio me pasaba que me creaba los contenedores y me funcionaban los clientes de escritorio y web, pero no me funcionaba el entorno de desarrollo C/SIDE. Cuando lo abría me decía que faltaba alguna dll (no recuerdo el nombre de la dll que faltaba).Al final vi que, si creaba contenedores docker sobre una máquina que no había tenido nunca una instalación de NAV o BC, me fallaba.
Pero si antes de crear contenedores docker, en la máquina hacía una instalación de NAV o BC, entonces si me funcionaba todo.
Supongo por el tema de que docker reaprovecha muchas de las cosas que encuentra en la máquina que lo aloja. Y quizá la dll en concreto que faltaba no venía dentro del contenedor docker si no que realmente se esperaba que estuviera en la máquina que aloja los contenedores.Lo que no conseguí, si había creado un contenedor docker en una máquina que no había tenido nunca una instalación de NAV o BC, es instalarlo a posteriori y volver a crear los contenedores docker y que me funcionara.
En mi caso estaba haciendo pruebas con máquinas en Azure. Así que como no me funcionaba, simplemente eliminé la máquina, cree una nueva y ya está.No se si este será tu caso, pero espero que esta información te sea de utilidad.
Un saludo,
Cristina Nicolàs18 febrero 2019 a las 10:27 #8570
ImakParticipanteImakHola Cristina,
Gracias por tu respuesta.
En mi caso tengo una instalación de DynamicsNav 2018CU10 previa a la de docker.
A continuación te pongo el código de salida de la instalación de un contendor nav2018cu13:
Starting Container
Hostname is NAV2018CU13
PublicDnsName is NAV2018CU13
WARNING: DNS resolution not working from within the container.
Using Windows Authentication
Starting Local SQL Server
Starting Internet Information Server
Modifying Service Tier Config File with Instance Specific Settings
Starting Service Tier
Using license file ‘c:\run\my\license.flf’
Import License
Creating DotNetCore Web Server Instance
Creating http download site
Creating Windows user XXXX
Setting SA Password and enabling SA
Creating SUPER user
Container IP Address: 172.23.129.24
Container Hostname : NAV2018CU13
Container Dns Name : NAV2018CU13
Web Client : http://NAV2018CU13/NAV/
Dev. Server : http://NAV2018CU13
Dev. ServerInstance : NAVFiles:
http://NAV2018CU13:8080/al-0.13.68736.vsixWARNING: You are running a container which is 64 days old.
Microsoft recommends that you always run the latest version of our containers.Initialization took 147 seconds
Ready for connections!
Reading CustomSettings.config from NAV2018CU13
Creating Desktop Shortcuts for NAV2018CU13
Nav container NAV2018CU13 successfully createdMe crea los accesos directos, aparentemente todo bien. Pero no me funcionan ni el cliente CSide, ni el RTC, ni el Web. En cada caso me retornan los siguiente errores:
– Cliente CSide:
The NAV2018CU13\SQLEXPRESS server cannot be found. Try again later or contact your system administrator.
Tengo instalado el SqlServer management studio y no es capaz de localizar ningún servido con ese nombre.
– Cliente RTC
No se encontró ningún servidor en “net.tcp://nav2018cu13:7046/NAV/Service”. La URL es incorrecta o el servidor no está disponible actualmente.
He mirado en los servicios de windows y tampoco veo que exista ningún servicio nuevo que haga referencia al contendor.
-Cliente web
No se puede acceder a este sitio web
No se ha podido encontrar la dirección IP del servidor de nav2018cu13.Por otro lado, he entrado en el administrador de powershell del contenedor y ahí si que puedo ver los servicios, que están arrancados, tanto del sql server (SQLEXPRESS) como el de DynamicsNav (NAV). Entiendo que el problema que estoy teniendo en el cliente RTC, CSide y Web, es el acceso al host que representa al contendor (NAV2018CU13).
La verdad es que no soy ningún experto en estos temas, igual puedes echarme un cable.
Gracias y un saludo
18 febrero 2019 a las 11:34 #8572
ImakParticipanteImakHola de nuevo Cristina,
Pues sí, parece que el problema estaba en que el host que identifica al contenedor no es accesible usando su nombre, en este caso NAV2018CU13. Sin embargo si utilizo su IP, funciona.
He cambiado el acceso directo a CSide en sus propiedades cambiando el host por la IP–> arreglado.
He modificado el fichero ClienUserSettings.config de la carpeta del contenedor (C:\ProgramData\NavContainerHelper\Extensions\NAV2018CU13\Program Files\110\RoleTailored Client\) cambiando el nombre del host por su ip. –>Arreglado el cliente RTC
Para el cliente web no sé cómo editar el acceso directo para hacer lo mismo, pero si lo hago en el navegado que me abre el acceso directo también funciona. Vamos que el problema es que mi ordenador, no sé por qué, no sabe traducir NAV20118cu13 a su IP correspondiente.
Gracias por tu atención Cristina
Saludos
18 febrero 2019 a las 12:17 #8573
Cristina NicolàsSuperadministrador18 febrero 2019 a las 17:59 #8575
Debe iniciar sesión para responder a este tema.