The main idea is separate development between different teams. Example: we have a microservices architecture in which each module is independent and must be configured somehow. And we want to have one entry point for configuration.
Solution: We make one entry point (Admin CRM) for configuration under a separate domain (http://admin.com). Each team is developing self application (app.js) with self (routes, crones, jobs) and describe it on the file (manifest.json) in the self repositories. The role of admin CRM is read manifest.json parsing it and integrate in web page.
To make the code organised each module uses Layered Architecture and each functional area is divided on four layers:
Application
Doman
Infrastructure
UI
- PHP 8.1
- Symfony 6.0
- RabbitMQ
- GraphQL
- Kubernetes
- Vue 3.0
- Install the stable version docker for MAC
- Run
make install
- Add docker machine IP to /etc/hosts
- Travel: https://market.travel.docker
GNU/Linux platform
0.0.0.0 app.docker
Mac OS X platform
127.0.0.1 app.docker