Локальная среда. Связь между двумя докеризованными приложениями API Platform

Мне нужно создать репозитории, в обоих из которых есть два приложения на базе API Platform:

Теперь они оба докеризованы с конфигурацией Docker по умолчанию, которую поставляет API Platform. У меня следующий сценарий:

Мне удалось создать мост между ними, который выглядит примерно так (следуя этой статье: https://medium.com/@murilolivorato/connecting-two-laravel-projects-built-in-two-docker-compose-environments-1a979e64f332):

compose.yaml (App1) внутри C1:

compose.yaml (App2) внутри C2:

Теперь эти конфигурации, похоже, работают. Я могу настроить App1 для отправки запроса на "https://<app2-container-name/api/v1/".

Но следующая проблема, с которой я столкнулся, связана с HTTPS. API Platform Framework предоставляет доступ ко всем конечным точкам (даже локально) через HTTPS. И когда я пытаюсь отправить запрос из C1 в C2, используя конфигурацию выше, я получаю следующую ошибку:

OpenSSL/3.0.13: error:0A000438:SSL routines::tlsv1 alert internal error for "https://<app-2-container-name>/api/v1/<some-endpoint>".

Я как бы застрял на этом этапе.

Изначально я пытался включить связь между C1 и C2, следуя указанной статье. Но после этого я получаю OpenSSL/3.0.13: error:0A000438:SSL routines::tlsv1 alert внутренняя ошибка для "https://<app-2-container-name>/api/v1/<some-endpoint".

Я также пытался отключить HTTPS в API Platform, в моей локальной среде, но безуспешно. Каждый запрос к HTTP перенаправляется куда-то на HTTPS.

services:
  php:
    [...]
    networks:
      - app1_network
      - app2_app1_network
  networks:
    app2_app1_network:
      external: true
    app1_network:
services:
  php:
    [...]
    networks:
      - app2_network
      - app1_network
  networks:
    app1_network:
      driver: bridge
    app2_network:
Селиван
Вопрос задан1 августа 2024 г.

1 Ответ

Ваш ответ

Загрузить файл.