I am working on an Angular2 project with Yii2 (PHP/MySQL) as its API point. We will need to deploy the Angular app in different languages for different customers (using AOT compilation from angular-cli).
What is the best way to achieve this? I am looking at Docker or Ansible(-container) to make this work. But the examples are mainly for a 1:1 setup. But I would need a 1:n, something like:
deploy app-de new_costomer prod_server
Additional to that, when a new version of the app is available i want to update the entire network with the new app (that requires uploading of the src/ folder AOT compiled, and db migration scripts on the Yii2 side).
Ideally it would do something like:
deploy update network-all prod_server
To clarify: I have a number of customers, each customer should get its own container (docker, through ansible-container). There is the AOT compiled Angular stuff (just JS) and the PHP backend with MySQL.
Each customer gets this setup on a server (so 3 customers = 3 docker containers with the Angular + PHP + MySQL).
We push updates to both Angular and PHP quite frequently (i.e. the entire DIST folder needs to be uploaded or at least a diff, migrations scripts for the PHP/MySQL backend needs to run, etc.).
And this from one command (because I obviously do not want to have SSH into each container to do all that semi-manually).
Since I have never done this kind of setup before, I would like to get some ideas on how this can achieved with things like Ansible (or the like).