Situatie
Ai configurat Docker corect, imaginea se construieste fara erori, toate comenzile docker build si docker compose up se executa cu succes, dar local host nu face conexiunea pe portul ales de noi in fisierul Docker. (vezi imaginea de mai jos)
Solutie
Cand Docker construieste imaginea, majoritatea imaginilor de baza (inclusiv http://mcr.microsoft.com/dotnet/aspnet si python:3 etc.) ruleaza pe Linux, iar shell-ul folosit acolo (/bin/sh sau /bin/bash) nu recunoaste CRLF ca delimitator valid de linie.
Cum Windows creeaza automat terminatori de linie in format CRLF, Docker nu da eroare, dar nu citeste corect delimitatorul de linie. Asadar, problema provine din fisierul “entrypoint.sh”.
Pentru a rezolva, avem de parcurs 2 pasi simpli.
Pasul 1: Intram in fisierul cu problema
- deschidem Visual Studio Code si accesam fisierul “entrypoint.sh”
Pasul 2: Schimbam din CRLF in LF
- in coltul din dreapta jos, putem schimba aceasta optiune (vezi imaginea de mai jos)
Pasul 3: rulam din nou “docker compose up –build -d”
- va compila fara probleme si va crea containerul
Dupa aceasta schimbare, local host se va conecta fara probleme la portul dorit.



Leave A Comment?