Docker -Compose для реакции и flask выполнение контейнеров с dokcer-compose up - PullRequest
1 голос
/ 28 мая 2020

Я использую docker -compose для создания моих flask и реагирующих изображений, но когда я запускаю команду docker -compose, мой flask контейнер работает, но мой реагирующий контейнер не активирован, и для активации Я запустил образ запуска команды, я не знаю, почему это происходит, надеюсь, вы можете объяснить, почему.

My dokcer-compose.yml

version: '3'

services:
  cloud-flask-back:
    container_name: flask
    build: ./Flask
    ports:
        - "5000:5000"
    volumes:
        - ./Flask:/cloud
    environment:
      FLASK_ENV: development
    restart: on-failure
  cloud-react-front:
    container_name: react
    build: ./cloud-front
    ports:
        - "3000:3000"
    volumes:
      - ./cloud-front:/cloud-front-end
    environment:
      NODE_ENV: development
      PORT: 3000
    restart: on-failure

my Dockerfile для реакции

FROM node:14
# Create app directory
WORKDIR /cloud-front-end
# Install app dependencies
COPY package*.json ./

RUN npm install
# Copy app source code
COPY . .
EXPOSE 3000

CMD ["npm", "start"]

Надеюсь, вы мне поможете. Спасибо за чтение

Ответы [ 2 ]

1 голос
/ 28 мая 2020

Я сталкивался с этой проблемой раньше, когда пытался запустить контейнер приложения реакции с использованием образа «узел». Я считаю, что conatiner запускается и останавливается, когда мы пытаемся ru docker -compose.

Попробуйте добавить "stdin_open: true" в службу 'cloud-react-front' в docker -compose.yml. У меня это сработало.

0 голосов
/ 23 июня 2020

Подключенные тома в cloud-response-front переопределят все файлы в контейнере с хост-томами, поэтому для контейнера нет доступных node_modules.

Я предполагаю, что вы запускаете эту настройку в разработке. попробуйте запустить: docker-compose run cloud-react-front npm install, он добавит node_modules на ваш хост

, а затем попробуйте: docker-compose up, он должен работать.

...