, поэтому я разрабатываю базовый c Express бэкэнд для приложения React. Запрос делается следующим образом:
axios.get(`${serverLocation}/api/graph/32`).then(res => {
this.setState({datag: res.data});
for(var key in this.state) {
data.push(this.state[key]);
}
});
Расположение сервера выглядит как http://IP: PORT . API-интерфейс правильный, и все, что я вижу, и на моей машине разработки это работает. React делает успешные запросы к серверу в указанном месте и т. Д. c. Дело в том, что когда я помещаю это в 2 отдельных docker контейнера через docker -compose.yml, это не будет работать. Это мой docker -compose.yml:
version: '2.0'
services:
server:
restart: always
container_name: varno_domov_server
build: .
ports:
- "8088:5000"
links:
- react
networks:
- varnodomovnetwork
react:
restart: always
container_name: varno_domov_client
build: client/
ports:
- "8080:3000"
networks:
- varnodomovnetwork
networks:
varnodomovnetwork:
driver: bridge
У меня также есть пользовательские файлы Docker, сервер выглядит так:
FROM node:10
WORKDIR /usr/src/app
COPY package*.json ./
RUN npm install
COPY . .
EXPOSE 5000
CMD [ "npm", "start" ]
А клиент выглядит так:
FROM node:10
WORKDIR /usr/src/app
COPY package*.json ./
RUN npm install
COPY . .
EXPOSE 3000
CMD [ "npm", "start" ]
Если вы зашли так далеко, спасибо, что нашли время. Я открыт для любых предложений, касающихся docker здесь, часть React не написана мной. Если какая-либо дополнительная информация требуется, сообщите мне в комментариях. Изоляция делает меня очень доступным:)