У меня есть приложение NodeJS, которое я хочу иметь размер докера.
Приложение состоит из двух частей:
серверная часть, на которой работает API, которыйбрать данные из БД.Это выполняется на порту 3000;
клиентская часть, которая выполняет вызовы к конечным точкам API с серверной части.Это работает на порту 8080;
С этим у меня есть переменная с именем «server_address» в моей клиентской части, и она имеет значение «localhost: 3000».Но в том-то и дело, что оба проекта должны иметь размер докера в отдельных Dockerimage
файлах и объединяться в один docker-compose.yml
файл.
Поэтому по ряду причин мне приходится запускать док-контейнеры через файл docker-compose.yml
.Так можно ли как-то соединить эти вещи и передать адрес сервера извне из dockerfile в проект NodeJS?
docker-composer.yml
version: "3"
services:
client-side-app:
image: my-client-side-docker-image
environment:
- BACKEND_SERVER="here we need to enter backend server"
ports:
- "8080:8080"
server-side-app:
image: my-server-side-docker-image
ports:
- "3000:3000"
оба Dockerfile выглядит так:
FROM node:8.11.1
WORKDIR /app
COPY package*.json ./
RUN npm install
COPY . .
CMD ["npm", "run", "dev"]
, имея эти файлы, у меня возникает проблема:
- смогу ли я использовать переменную
BACKEND_SERVER
как-то в проекте?И если да, как это сделать?Я имею в виду не файл Dockerimage
, а сам проект?