Ich habe neue Angular2 App von Angle-CLI erstellt und führen Sie es in Docker. Aber ich kann es nicht von localhost verbinden.Docker Container mit Angular2 App und NodeJs reagiert nicht
Zuerst init ich App auf meinem lokalen Rechner:
ng new project && cd project && "put my Dockerfile there" && docker build -t my-ui .
ich es durch Befehl starten:
docker run -p 4200:4200 my-ui
Dann auf meinem localhost versuchen:
curl localhost:4200
und erhalten
curl: (56) Recv fehlgeschlagen: Verbindung von Peer zurückgesetzt
Dann habe ich versucht, Schalter in Laufbehälter (Docker exec -ti Container-id bash) und führen Sie curl localhost: 4200 und es funktioniert.
Ich habe auch versucht mit --net = host param Container auszuführen:
docker run --net=host -p 4200:4200 my-ui
Und es funktioniert. Was ist das Problem? Ich habe auch versucht, Container im Daemon-Modus laufen zu lassen und es hat nicht geholfen. Vielen Dank.
Mein Dockerfile
FROM node
RUN npm install -g [email protected] && npm cache clean && rm -rf ~/.npm
RUN mkdir -p /opt/client-ui/src
WORKDIR /opt/client-ui
COPY package.json /opt/client-ui/
COPY angular-cli.json /opt/client-ui/
COPY tslint.json /opt/client-ui/
ADD src/ /opt/client-ui/src
RUN npm install
RUN ng build --prod --aot
EXPOSE 4200
ENV PATH="$PATH:/usr/local/bin/"
CMD ["npm", "start"]
was OS und Version von Docker zu dienen? – shusson