Я пытаюсь докеризировать приложение Expo React Native, чтобы любой из моих партнеров по команде мог загрузить репозиторий, а затем сделать docker-compose up
и без труда запустить на своих компьютерах тот же самый выставочный сервер.
Насколько я могу сделать контейнер, и он показывает ту же информацию, которая появляется, когда я запускаю его локально на моем компьютере.
Проблема возникает при попытке запустить metro bundler, URL http://localhost:19002
недоступен. Этого не происходит с портом 19001, который работает отлично. Кроме того, я попытался отсканировать QR-код с моим устройством iPhone, но он также не работает, потому что не находит docker ip, я думаю.
Я не могу понять, что я делаю неправильно, и в Интернете не так много информации о выставке dockerize.
Это мой dockerfile и docker -compose.yml
FROM node:latest
RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app
COPY package*.json /usr/src/app/
COPY app.json /usr/src/app/
RUN npm install -g expo-cli
EXPOSE 19000
EXPOSE 19001
EXPOSE 19002
CMD npm i -f && npm start
version: '3.7' # Specify docker-compose version
# Define the services/containers to be run
services:
expo: # Name of the frontend service
container_name: expo-prestadores
build: ./ # Specify the directory of the Dockerfile
ports:
- 19000:19000 # Specify port-forwarding
- 19001:19001
- 19002:19002
volumes: # Mount host path in the container
- ./:/usr/src/app
- /usr/src/app/node_modules