私はangular-cliで新しいAngular2アプリを作成し、Dockerで実行しました。しかし、私はそれをlocalhostから接続することはできません。まずAngular2 appとNodeJsを持つDockerコンテナは応答しません
私は私のローカルマシン上でアプリをINIT:
ng new project && cd project && "put my Dockerfile there" && docker build -t my-ui .
私はコマンドでそれを起動します。
docker run -p 4200:4200 my-ui
その後、私はlocalhostにしてみてください:
curl localhost:4200
と
を受け取りますカール(56)のrecv失敗:ピア
による接続リセット、Iは、容器(ドッカーEXEC -tiコンテナIDバッシュ)を実行中にスイッチを試み、ローカルホストカール実行:4200を、それが動作します。
私も--net =ホストのparamでコンテナを実行しようとした:
docker run --net=host -p 4200:4200 my-ui
そして、それは動作します。何が問題ですか?デーモンモードでコンテナを実行しようとしましたが、それは助けにはなりませんでした。ありがとう。
マイ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"]
に更新すなわち、外部アプリを提供するために
angular-cli
を変更する必要がありますか? – shusson