Подключиться к локальному хосту между контейнерами?Javascript

Форум по Javascript
Ответить Пред. темаСлед. тема
Гость
 Подключиться к локальному хосту между контейнерами?

Сообщение Гость »


У меня есть 2 простых приложения node.js

app1/index.js

импортировать выборку из 'node-fetch'; импортировать экспресс из «экспресса» константное приложение = экспресс() константный порт = 3000 app.get('/', (req, res) => { выборка("http://localhost:3002/", { метод: 'POST', заголовки: { 'Content-Type': 'application/json' }, тело: JSON.stringify({ "msg": "hello app2" }) }) .then(соответственно => соотв.json()) .then((соответственно) => { res.json(соответственно) }) }) app.listen(port, () => { console.log(`app1 прослушивает порт ${port}`) }) app2/index.js

const express = require('express') константное приложение = экспресс() константный порт = 3002 app.use(express.json()); app.post('/', (req, res) => { res.json({ "msg": "И тебе привет" }) }) app.listen(port, () => { console.log(`app2 прослушивает порт ${port}`) }) когда я захожу на localhost:3000 в своем браузере, app1 извлекает данные из app2 и отображает их, и это отлично работает локально. Проблема возникает, когда я пытаюсь их докеризовать

Dockerfile(ы) для обоих

ОТ узла: 18-alpine РАБОЧИЙ ПАРАМЕТР/приложение КОПИРОВАТЬ. . ВЫПОЛНИТЬ npm я ЭКСПОЗИЦИЯ 3000 # EXPOSE 3002 для приложения2 CMD ["узел", "index.js"] docker-compose.yaml

услуги: приложение1: сборка: ./app1 имя_контейнера: app1_c порты: - «3000:3000» дополнительные_хосты: - "host.docker.internal:host-gateway" приложение2: сборка: ./app2 имя_контейнера: app2_c порты: - "3002:3002" дополнительные_хосты: - "host.docker.internal:host-gateway" Это не работает, и app1 не может получить доступ к локальному хосту app2: 3002
Я предполагаю, что потому, что app1 отправляет запрос на выборку на локальный хост: 30002 своего собственного контейнера вместо локального хоста приложения2, но я подумал, что "host.docker.internal:host-gateway" устраняет эту проблему и обеспечивает межконтейнерное взаимодействие?

Может кто-нибудь помочь мне понять?

Информация о системе
Ubuntu 22.04.3 LTS
Движок Docker v24.0.6

Изменить: изменены имена client -> app1 и server -> app2, чтобы избежать путаницы
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Подключиться с устройства iOS к локальному хосту
    Anonymous » » в форуме IOS
    0 Ответы
    13 Просмотры
    Последнее сообщение Anonymous
  • Подключиться с устройства iOS к локальному хосту
    Anonymous » » в форуме IOS
    0 Ответы
    21 Просмотры
    Последнее сообщение Anonymous
  • Как подключиться к локальному хосту в Linux
    Anonymous » » в форуме Python
    0 Ответы
    15 Просмотры
    Последнее сообщение Anonymous
  • Как подключиться к локальному хосту в Linux
    Anonymous » » в форуме Python
    0 Ответы
    10 Просмотры
    Последнее сообщение Anonymous
  • Как подключиться к локальному хосту в Linux
    Anonymous » » в форуме Html
    0 Ответы
    10 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Javascript»