Я не совсем уверен, что вы используете с python, но я предполагаю, что вы используете что-то вроде flusk. Допустим, вы используете колбу и у вас есть свои скрипты для сервисов micro-service-a.py, micro-service-b.py и micro-service-c.py. Вы можете запустить их так:
В Linux Bash
Открыть сеанс терминала 1 и запустить:
$ export FLASK_APP=micro-service-a.py
$ flask run --host 0.0.0.0 --port 5001
Открыть сеанс терминала 2и запустите:
$ export FLASK_APP=micro-service-b.py
$ flask run --host 0.0.0.0 --port 5002
Откройте сеанс терминала 3 и запустите:
$ export FLASK_APP=micro-service-c.py
$ flask run --host 0.0.0.0 --port 5003
Таким образом, вы будете работать с каждым портом для каждого из своих сервисов, чтобы вы могли использовать каждый API-интерфейс сервиса издругой порт на локальном хосте, например localhost: 5001, localhost: 5002 и localhost: 5003.
В Windows Powershel
Единственное отличие состоит в том, что вы задали бы env:FLASK_APP по-другому. Например:
$env:FLASK_APP = "micro-service-a.py"
flask run
Вы можете узнать больше о командах CLI здесь .
Вы даже можете написать небольшой скрипт powershell или bash для инициализации, запуска процессовОстановись и убери их. Вам не нужно делать это вручную во всех трех терминальных сессиях, и если у вас больше микро-сервисов, то вам потребуется еще больше терминальных сессий, которыми вам нужно будет управлять. Это облегчит вашу работу.
Вы можете сделать это наверняка, но вместо этого я настоятельно рекомендую использовать Docker для этой цели. Хорошая вещь о docker заключается в том, что вы создали бы docker-compose, который имел бы собственную сеть для вашей среды. Это будет включать в себя все части вашего приложения, включая ReactApp в качестве одного контейнера и контейнера для каждой микро-службы. Таким образом, вы могли бы даже иметь разные версии Python в каждом микросервисе, и команды для инициализации, сборки и запуска, остановки, запуска, удаления всего вашего приложения будут выглядеть так:
docker-compose -f "docker-compose-my-react-and-python-app.yml" up -d
docker-compose -f "docker-compose-my-react-and-python-app.yml" stop
docker-compose -f "docker-compose-my-react-and-python-app.yml" start
docker-compose -f "docker-compose-my-react-and-python-app.yml" down -v
Примечание:Я знаю о локальном подходе Docker, но мне интересно, есть ли более простой способ сделать это без чего-либо вроде Docker?
Использование docker для этого намного проще, чем написание и управление всеми этими скриптами (bashили powerhsell) вручную.
Вы можете найти множество примеров того, как создавать файлы Dockerfile и docker-compose для аналогичных приложений, которые вы создаете здесь, через переполнение стека или другие источники в Интернете.