Azure Container Instance (ACI) è un servizio che permette di eseguire un container Docker in semplici pochi passi senza l'ausilio di un orchestratore. Si indicano la CPU, la memoria e le configurazioni del container e in pochi secondi otteniamo un'immagine funzionante che paghiamo solo per il tempo che lo utilizziamo.
Come sappiamo un container ha un file system temporaneo che viene perso nel momento in cui il container viene eliminato, per questo motivo usiamo i volumi per mappare un path dell'host all'interno del guest. Sulla piattaforma Microsoft Azure non abbiamo visibilità dell'host, per questo motivo è possibile creare un volume che punti direttamente al sistema per eccellenza per la memorizzazione dei file: Azure Storage.
Nello specifico, quello che possiamo fare è mappare un'istanza di Azure File Share, il servizio che ci permette di accedere tramite Samba e NFS. Per questo motivo dobbiamo prima di tutto procedere alla sua creazione e successivamente creare il container. I container non possono essere modificati, perciò se esso esiste già, è necessario eliminarlo per poi ricrearlo.
Purtroppo, dall'interfaccia non è presente il supporto a questa funzionalità, perciò dobbiamo ricorrere all'uso di Azure CLI, installandolo sulla propria macchina o utilizzando Azure Cloud Shell. Per montare la share è necessario lanciare il seguente comando:
az container create \ --resource-group myGroup \ --name myContainer \ --image mcr.microsoft.com/azuredocs/aci-hellofiles \ --dns-name-label myTest \ --ports 80 \ --azure-file-volume-account-name myAccount \ --azure-file-volume-account-key myPrimaryKey \ --azure-file-volume-share-name shareName \ --azure-file-volume-mount-path /aci/logs/
Nell'esempio, oltre a creare il container specificando immagine e porta, vengono indicate le coordinate della share e come ultimo parametro il percorso dal quale il guest può raggiungere i contenuti. E' da specificare che è possibile indicare anche più share, ma è necessario ricorrere all'uso dello YAML o a ARM, come indicato al seguente link.
https://docs.microsoft.com/it-it/azure/container-instances/container-instances-volume-azure-files#mount-multiple-volumes
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Anonimizzare i dati sensibili nei log di Azure Front Door
Migliorare i tempi di risposta di GPT tramite lo streaming endpoint in ASP.NET Core
Applicare un filtro per recuperare alcune issue di GitHub
Creare una libreria CSS universale: Immagini
Gestire il routing HTTP in Azure Container App
Utilizzare l'espressione if inline in una pipeline di Azure DevOps
Creare agenti facilmente con Azure AI Agent Service
Managed deployment strategy in Azure DevOps
Ordine e importanza per @layer in CSS
Creare una libreria CSS universale - Rotazione degli elementi
Esporre i propri servizi applicativi con Semantic Kernel e ASP.NET Web API
Utilizzare Intersect e Except per filtrare set di dati in TSql
I più letti di oggi
- prenota subito i nostri nuovi libri su #aspnet45, #aspnetmvc 4, #csharp5, #vb2012, #vs2012: https://aspit.co/ad1 15% di sconto @Hoepli_1870
- #Windows10 e #UWP: non perdere il 15/12 il nostro streaming gratuito #aspilive https://aspit.co/Win10-Live
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- Impostare una policy di retry con Polly e IHttpClientFactory in #aspnetcore2.1 https://aspit.co/bpm di @GentiliMoreno #webapi #aspnetcore1
- Gestire il warmup di una web app #azure in bilanciamento di carico https://aspit.co/bqo di @CristianCivera
- Gestire la documentazione di più versioni della stessa API su #aspnetcore2.1 https://aspit.co/bqs di @crad77 #webapi
- Web UI interattive con #blazor Server https://aspit.co/bw9 di @GentiliMoreno #aspnetcore3 #netcore3
- Use Firebase in #PWA https://aspit.co/b2g
- Testare le impostazioni CORS di un'applicazione #aspnetcore https://aspit.co/b4p di @crad77 #webapi
- @scottgu mostra come creare app per #wp7 a #pdc10 http://u.aspitalia.com/n3