Docker este configurat corect, dar localhost refuza conexiunea

Configurare noua (How To)

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.

Tip solutie

Permanent

Voteaza

(1 din 2 persoane apreciaza acest articol)

Despre Autor

Leave A Comment?