Tra le numerose funzionalità offerte da Azure App Service c'è anche la possibilità di avere un hosting basato su Linux, oltre a quello Windows. Nel farlo possiamo scegliere quale runtime, tra node.js, .NET Core e PHP utilizzare, oppure ospitare direttamente un container Docker.
Sicuramente tra le cose che siamo abituati a fare quando lavoriamo con Linux, c'è la necessità di utilizzare SSH per operare sulla macchina, gestire i file e installare componenti. Di recente è stata inserita questa possibilità anche in questo ambiente virtualizzato, limitando i permessi e la gestione alla sola parte di competenza della web app.
Oltre all'utilizzo di Cloud Shell c'è anche la possibilità di utilizzare il proprio client SSH preferito e connettersi da qualsiasi macchina verso il nostro host. Per ottenere questo risultato viene messa a disposizione una tecnica di tunneling che sfrutta una connessione web socket per veicolare la nostra sessione. Prima di tutto dobbiamo disporre di Azure CLI installato sulla macchina client che vuole aprire il tunnel. Lanciamo poi il seguente comando per installare l'estensione.
az extension add --name webapp
In alternativa usiamo update se l'estensione è già installata. Non ci resta che aprire il tunnel con il seguente comando.
az webapp remote-connection create --resource-group nomeGroup -n nomeWebApp -p 2234 > Port 2234 is open > SSH is available { username: root, password: Docker! } > Start your favorite client and connect to port 2234
Il numero di porta è di libera scelta ed è la porta sul quale viene aperto in locale un canale di ascolto SSH. Lanciando il comando ci vengono comunicate le credenziali da utilizzare perciò non ci resta che aprire un client qualsiasi, come Putty o il client disponibile su Linux e connettersi.
ssh root@127.0.0.1 -p 2234
Con questa istruzione ci connettiamo localmente al server SSH che gira il tutto all'host di Azure, con il quale possiamo gestire l'intera cartella del sito e vedere i processi dedicati, come mostrato nella figura.
La connessione resta aperta fino a quando non terminiamo il client e non chiudiamo anche Azure CLI che nel frattempo resta in ascolto per effettuare il tunneling.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Effettuare chiamate con versioning da Blazor ad ASP.NET Core
Inizializzare i container in Azure Container Apps
Eseguire una GroupBy per entity in Entity Framework
Migliora le tue soluzioni ASP.NET Core con Azure OpenAI
Utilizzare la libreria Benchmark.NET per misurare le performance
Ottimizzare la latenza in Blazor 8 tramite InteractiveAuto render mode
Ottimizzare le performance delle collection con le classi FrozenSet e FrozenDictionary
Eseguire attività basate su eventi con Azure Container Jobs
Usare Refit e Polly in Blazor per creare client affidabili e fortemente tipizzati
Miglioramenti nell'accessibilità con Angular CDK
Utilizzare Model as a Service su Microsoft Azure
Usare un KeyedService di default in ASP.NET Core 8
I più letti di oggi
- C# 4
- Spaziatura tra i caratteri in Silverlight 5
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- Segui in tempo reale il TechEd 2004
- da oggi è possibile fare login velocemente con LinkedIn e Google. a questi si aggiunge il supporto già attivo per Facebook, Twitter, Microsoft Account, Windows Hello e OpenID, per darvi sempre più possibilità di accedere semplicemente alla nostra community! #aspitalia
- Migrare una service connection a workload identity federation in Azure DevOps
- Evitare postback multipli in un UpdatePanel