Я пытаюсь сделать приложение с веб-и мобильной частью. Я создаю это приложение через docker, веб в React JS и мобильно через React-native
Хитрость заключается в том, что мне нужно получить apk после сборки Сборка реагирования и поместить его в том и поделитесь им с веб-контейнером.
Я пробовал по крайней мере 3-4 dockerfile для реакции-нативного, но никто не может собрать apk.
Если кто-то может мне помочь, это будет хорошо.
Мой Dockerfile Fort React JS:
FROM node:12.2.0-alpine
WORKDIR /app
COPY . .
RUN npm install --silent
RUN npm install react-scripts@3.0.1 -g --silent
EXPOSE 81
CMD ["npm", "start"]
мой docker состав:
version: "3"
services:
client_web:
container_name: app_client
build:
context: client_web
dockerfile: Dockerfile
ports:
- "8081:81"
restart: always
networks:
- front_end
depends_on:
- server
- client_mobile
volumes:
- apk-data:/tmp:rw
client_mobile:
container_name: app_mobile
build:
context: client_mobile
dockerfile: Dockerfile
restart: always
networks:
- mobile
volumes:
- apk-data:/app/android/app/build/outputs/apk/:rw
server:
container_name: app_server
build:
context: ./server
dockerfile: Dockerfile
ports:
- "8080:80"
restart: always
networks:
- front_end
- mobile
- back_end
depends_on:
- db
environment:
DB_HOST: ${DB_HOST}
DB_USER: ${DB_USER}
DB_PWD: ${DB_PWD}
DB_DB: ${DB_DB}
db:
image: mysql:5.7
container_name: db_area
restart: always
volumes:
- db-data:/var/lib/mysql
networks:
- back_end
ports:
- "3306:3306"
environment:
MYSQL_DATABASE: ${MYSQL_DATABASE}
MYSQL_USER: ${MYSQL_USER}
MYSQL_PASSWORD: ${MYSQL_PASSWORD}
MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}
volumes:
db-data:
apk-data:
driver: local
networks:
front_end:
driver: bridge
back_end:
driver: bridge
mobile:
driver: bridge