Conteneur Docker ne fonctionne tableau de bord de l'application sur localhost:4200 et quand localhost:8080 afficher la page web de nginx

0

La question

J'ai donc écrit ce 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/

Lors de l'exécution de la commande npm run build il va créer le Distdossier l'avant-dernière ligne va enlever les choses dans le dossier nginx/html et que la dernière ligne est-ce qui va remplacer ce dossier avec les fichiers de la Dist dossier, où est la Index.html.

lorsque j'exécute le code: docker build -t dashboard-app:v1 . il crée l'image

Que je lance le code: docker run --name dashboard-app-container -d -p 8080:80 dashboard-app:v1

quand je vais à localhost:8080 il show " NGINX. Si vous voyez cette page, le serveur web nginx est correctement installé et fonctionne. En outre coonfig. est nécessaire"

Je ne sais pas si mon problème est que docker n'est pas en mesure de remplacer le Dist dossier et de trouver l'index html ou si c'est quelque problème de port.

Quand je le lance sur localhost:4200 je peux voir le tableau de bord de l'app.

Toute sugestion???

Je vous remercie à l'avance

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

La meilleure réponse

0

Il est certainement difficile de savoir ce qu'est votre Dist dossier contenant et ce qui a été copié sur le nginx/html/ emplacement.

Tant que vous obtenez une réponse sur le port 8080il signifie que nginx est en cours d'exécution, mais n'est pas en mesure de trouver index.html page dans le nginx/html/ dossier.

Ce que je suggère de faire est d'exécuter votre Panneau de l'image avec la commande suivante depuis un terminal. Avis, la -d est supprimé, vous serez en mesure de voir les logs depuis le conteneur:

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

Dans un autre terminal de se connecter à l'image à l'aide de la commande suivante:

docker exec -it dashboard-app:v1 sh

Cela va ouvrir un shell sur le conteneur. Vous devez naviguer jusqu'à /usr/share/nginx/html localisation et d'enquêter sur son contenu. Vous serez en mesure de voir ce qui a été copié à partir de la Dist dossier et régler le Dockerfile aftewards.

2021-11-22 17:29:22

Bonjour. quand je fais ce que j'obtiens ceci: /usr/share/nginx/html # dir sh: dir: pas trouvé . Je bielive qui est vide, donc il ne fonctionne pas déplacer les fichiers à partir du dossier Dist. Je suis à essayer de comprendre comment écrire le panneau de fichier. une idée? merci!!!!!
Iuri De Barros

Dans d'autres langues

Cette page est dans d'autres langues

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