I have a multi-container app with source code stored on Github. Essentially, there's only one part in active development, and the other containers are either stable (like Nginx with special settings) or external (like redis).
My question is: how can I use Github Actions for the deployment to Azure App Service?
It's rather well-described for a single-container App, and I'm already able to push my image to the Container Registry with an Action. But then I still have to go to Azure web interface and trigger docker-compose from there. Or alternatively, I can trigger docker-compose from the Azure CLI from my local machine.
But the actual problem is to trigger docker-compose from the Github Action (in order to deploy every time my PR into master is validated).
Any ideas?
As a reference point: my docker-compose.yml is like this:
version: '3'
services:
nginx:
image: mycr.azurecr.io/nginx:dev-latest
ports:
- "80:80"
- "2222:2222"
volumes:
- asset-volume/app/static
depends_on:
- app
restart: always
app:
image: mycr.azurecr.io/django:dev-latest
ports:
- "8000:8000"
volumes:
- asset-volume:/app/static
- app-volume:/app
- api-documents:/app/documents/storage
redis:
image: redis:alpine
celery:
restart: always
command: celery -A mainApp worker -l info
image: mycr.azurecr.io/django:dev-latest
volumes:
- app-volume:/app
working_dir: /app
depends_on:
- app
- nginx
- redis
volumes:
asset-volume
app-volume