Pojemnik Docker uruchamia aplikację pulpitu nawigacyjnego tylko na lokalnym hoście:4200, a gdy host lokalny:8080, wyświetla stronę www nginx

0

Pytanie

Dlatego napisałem ten plik Dockerfile:

FROM node:13-alpine as build

WORKDIR /app

COPY package*.json /app/

RUN npm install -g ionic

RUN npm install

COPY ./ /app/

RUN npm run build

FROM nginx:alpine

RUN rm -rf /usr/share/nginx/html/*

COPY --from=build /app/dist/ /usr/share/nginx/html/

Gdy wykona polecenie npm run build on zamierza stworzyć Distfolder druga najnowsza linia przeznaczona do usuwania rzeczy z folderu nginx/html i ostatnia linia zastąpi ten folder z plikami Dist folder, w którym znajduje się Index.html.

gdy uruchamiam kod: docker build -t dashboard-app:v1 . to tworzy obraz

Czym uruchamiam kod: docker run --name dashboard-app-container -d -p 8080:80 dashboard-app:v1

kiedy idę do localhost:8080 to pokazuje " NGINX. Jeśli widzisz tę stronę, serwer www nginx pomyślnie zainstalowany i działa. Dalsza współpraca. chcesz"

Nie wiem, czy mój problem polega na tym, że docker nie może zastąpić folder Dist i znaleźć kod html indeksu, czy jest to jakiś problem z portem.

Gdy uruchamiam go na localhost:4200 widzę aplikacja "pulpit".

Masz jakieś słodycze???

Z góry dziękuję

containers docker dockerfile localhost
2021-11-22 16:43:56
1

Najlepsza odpowiedź

0

Oczywiście, trudno jest zrozumieć, że jest twoim Dist folder i to, co zostało skopiowane w nginx/html/ Lokalizacja.

Do momentu, aż otrzymasz odpowiedź na port 8080to oznacza, że nginx uruchomiony, ale nie może znaleźć index.html strona w nginx/html/ katalog.

Proponuję zrobić, to uruchomić obraz Docker z następującego polecenia z terminala. Należy pamiętać, że -d jeśli zostanie on usunięty, można wyświetlić dzienniki z pojemnika:

docker run --name dashboard-app-container -p 8080:80 dashboard-app:v1

W innym terminalu, podłącz się do obrazu, przy użyciu następującego polecenia:

docker exec -it dashboard-app:v1 sh

Spowoduje to otwarcie powłoki do kontenera. Trzeba przejść do /usr/share/nginx/html lokalizacja i zapoznaj się z jego zawartość. Można zobaczyć, co zostało skopiowane z Dist folder i ustaw plik Dockerfile w przeciwnym kierunku.

2021-11-22 17:29:22

Witam. kiedy to robię, dostaję następujący: /usr/share/nginx/html # dir sh: dir: nie znaleziono . Rozumiem, że to jest puste, więc przenoszenie plików z katalogu Dist nie działa. Staram się zrozumieć, jak napisać plik docker. jakieś pomysły? Dziękuję!!
Iuri De Barros

W innych językach

Ta strona jest w innych językach

Русский
..................................................................................................................
Italiano
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................