@VegasChickiChicki

Как установить связь между контейнерами в docker-compose?

Есть такая структура(docker-compose.yml):
version: "3"

services:
  client:
    container_name: client
    build: client/
    command: npm run dev
    env_file:
      - ".env"
    ports:
      - "${CLIENT_PORT}:${CLIENT_PORT}"
    volumes:
      - ./client:/client

  api:
    container_name: api
    build: api/
    command: npm run dev
    env_file:
      - ".env"
    volumes:
      - ./api:/api


Пытаюсь понятно как с фронта сделать запрос на апи, такой запрос не проходит:
`//api:${process.env.API_PORT}`

Не могу понять в чем дело...
  • Вопрос задан
  • 182 просмотра
Решения вопроса 1
karabanov
@karabanov Куратор тега Docker
Системный администратор
Запрос делаешь правильно. Переменные окружения задаёшь неправильно.

Чтобы задать переменную окружения внутри контейнера надо делать так Set environment variables in containers

̶П̶е̶р̶е̶м̶е̶н̶н̶ы̶е̶ ̶в̶ ̶.̶e̶n̶v̶ ̶о̶н̶и̶ ̶д̶л̶я̶ ̶d̶o̶c̶k̶e̶r̶-̶c̶o̶m̶p̶o̶s̶e̶,̶ ̶а̶ ̶н̶е̶ ̶д̶л̶я̶ ̶п̶р̶и̶л̶о̶ж̶е̶н̶и̶я̶ ̶в̶ ̶к̶о̶н̶т̶е̶й̶н̶е̶р̶е̶.̶
̶Н̶о̶ ̶т̶ы̶ ̶м̶о̶ж̶е̶ш̶ь̶ ̶з̶а̶п̶о̶л̶н̶я̶т̶ь̶ ̶п̶е̶р̶е̶м̶е̶н̶н̶ы̶е̶ ̶в̶ ̶e̶n̶v̶i̶r̶o̶n̶m̶e̶n̶t̶:̶ ̶и̶з̶ ̶.̶e̶n̶v̶

UPD
А нет, всё таки правильно. Передавать переменные из файла можно
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы