Docker-compose зависает при подключении к - PullRequest
0 голосов
/ 01 мая 2018

У меня проблема при запуске docker-compose. Он зависает при подключении, и я не могу получить доступ к своему веб-приложению на localhost:4200.

докер-compose.yml:

version: '2' # specify docker-compose version

# Define the services/containers to be run
services:
  angular: # name of the first service
    build:
      context: . 
      dockerfile: ./.docker/scs.dockerfile  # specify the directory of the Dockerfile
    container_name: secure-cloud-storage-build-dev
    image: secure-cloud-storage
    ports:
      - "4200:4200" # specify port forwarding

dockerfile:

# Stage 0, based on Node.js, to build and compile Angular
FROM node:8.6 as node
WORKDIR /app
COPY package.json /app/
RUN npm install
COPY ./ /app/
ARG env=prod
RUN npm run build -- --prod --environment $env

# Stage 1, based on Nginx, to have only the compiled app, ready for production with Nginx
FROM nginx:1.13
COPY --from=node /app/dist/ /usr/share/nginx/html
COPY ./nginx-custom.conf /etc/nginx/conf.d/default.conf

Nginx-custom.conf:

server {
  listen 80;
  location / {
    root /usr/share/nginx/html;
    index index.html index.htm;
    try_files $uri $uri/ /index.html =404;
  }
}

Вот подробный вывод:

docker-compose - расширенный вывод

Есть какие-нибудь подсказки, что может пойти не так? Я довольно новичок в мире Docker, в основном делаю учебные пособия, так что может быть что-то очевидное, что я пропустил Мой localhost:4200 возвращает ERR_EMPTY_RESPONSE.

Ответы [ 2 ]

0 голосов
/ 11 августа 2019

Я знаю, что опаздываю на вечеринку, но этого следовало ожидать. docker-compose, как и сборка docker, требует флаг -d, если вы хотите вернуть командную строку.

Что касается того, почему ваше приложение возвращает пустой ответ, я не уверен.

Надеюсь, что это поможет другим, зашедшим в эту ветку!

0 голосов
/ 27 июля 2018

В моем случае также зависает Docker, показывающий сообщение «Attaching to ...», но приложение работает. Таким образом, это проблема отображения, которую вы можете игнорировать.

Вы можете запустить Docker в отдельном режиме docker-compose up -d angular, чтобы отключить это сообщение. До сих пор я не понял, как запустить его в режиме переднего плана без получения сообщения.

Ваши файлы конфигурации в целом выглядят нормально, но вы должны настроить правильные порты, т.е. nginx также должен прослушивать порт 4200.

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