ERR_EMPTY_RESPONSE при запуске docker на локальном хосте - PullRequest
0 голосов
/ 20 февраля 2020

Я пытаюсь докернизировать свое приложение узла, но не могу обслуживать мой локальный хост. Я продолжаю получать ERR_EMPTY_RESPONSE на странице, и это немедленно. Самое странное, что я могу иногда go назад или пересылать в своем браузере на страницу и получать страницу. Приложение будет работать правильно, за исключением веб-сокетов, которые также имеют ошибку ERR_EMPTY_RESPONSE.

Мой docker -компонентный файл:

version: '3'

services:
  client:
    build:
      context: .
      dockerfile: client/client.Dockerfile
    image: client:1.0
    container_name: client-dev
    ports:
      - 8080:8080
    command: npm run dev
    depends_on:
      - server
  server:
    build:
      context: .
      dockerfile: server/server.Dockerfile
    image: server:1.0
    container_name: server-dev
    ports:
      - 8081:8081
    command: npm start

Мои файлы Docker: Сервер:

FROM node:9.10.1

WORKDIR /usr/src/
COPY ./server/package.json ./server/package.json
WORKDIR /usr/src/server
RUN npm install
COPY ./server .
EXPOSE 8081

Клиент:

FROM node:9.10.1

WORKDIR /usr/src/
COPY ./client/package.json ./client/package.json
WORKDIR /usr/src/client
RUN npm install
COPY ./client .
EXPOSE 8080

Я изучил эту приличную сумму и обнаружил, что эта проблема обычно возникает из-за не публикации порта для использования, но из того, что я могу сказать, я ' мы сделали это Как минимум, я смог получить доступ к приложению странным образом, так что я уверен, что все сделал правильно. Я думаю, что возможность резервного копирования на страницу могла быть вызвана кэшированием в браузере, поскольку я не могу воспроизвести его после очистки своего кэша.

В какой-то момент я подумал, что проблема может быть вызвана проблемы cors, так как контейнер docker запускается с другого IP-адреса, отличного от хост-компьютера, но внесение в белый список моего собственного IP-адреса не изменило проблему.

Дополнительные примечания:

У меня morgan на моем сервер и он регистрировал запросы, когда я смог попасть на страницу, но не при попытке получить доступ к localhost: 8080 обычным способом.

Я попытался docker system prune -a, чтобы очистить все и избежать проблем с кэшированием .

Я попробовал клиентские решения для ERR_EMPTY_RESPONSE ошибок, и они ничего не изменили.

На данный момент я просто бросаю вещи в стену в надежде, что что-нибудь оказывает влияние.

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