Угловой не могу подключиться к конечным точкам загрузки пружины в докер составить - PullRequest
0 голосов
/ 01 января 2019

Я переместил свое весеннее приложение (backend) и угловое приложение (frontend) в docker compose - все выглядит хорошо, но когда угловая отправка GET / POST для весенней загрузки не отвечает,

Dockerfile:

FROM java

VOLUME /tmp

ADD build/libs/backend.jar spring-boot-app.jar

RUN bash -c 'touch /spring-boot-app.jar'

ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/spring-boot-app.jar"]

docker-compose.yml

version: '3'


  backend:
    container_name: "backend"
    restart: always
    image: app:latest
    depends_on:
    - mysql
    - mongodb
    ports:
    - 8087:8080

  frontend:
    container_name: "frontend"
    image: frontend:latest
    ports:
    - 4201:4200

Dockerfile угловой:

FROM node:9.6.1

RUN mkdir /usr/src/app
WORKDIR /usr/src/app

ENV PATH /usr/src/app/node_modules/.bin:$PATH

COPY package.json /usr/src/app/package.json
RUN npm install
RUN npm install -g @angular/cli@1.7.1

COPY . /usr/src/app

CMD ng serve --host 0.0.0.0 --prod

My api const:

export const environment = {
  production: true,
  apiUrl: "http://backend:8080"
};

Когда я иду вlocalhost: 4201 - я вижу свой внешний интерфейс, когда захожу на localhost: 8087 я вижу, что мой бэкэнд и конечные точки работают хорошо, но Angular не получает ответ:

enter image description here

Пару раз пытаюсь выяснить - буду благодарен за каждый совет.

1 Ответ

0 голосов
/ 01 января 2019

Приложение Angular не работает в контейнере , оно используется как статические файлы для запуска в браузере .Вы связали порт 8087 вне контейнера с портом 8080 внутри него, поэтому просто используйте следующий URL-адрес для вызовов API из Angular: http://<your-machine-or-domain-name>:8087

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...