Apple ha rilasciato un toolkit per l'esecuzione di container Linux su macOS

L'azienda Apple ha presentato uno strumento per la creazione, il caricamento e l'esecuzione di contenitori Linux su macOS. Il funzionamento dei contenitori in macOS è garantito dall'uso di macchine virtuali leggere con un kernel Linux, avviate tramite l'ipervisor Virtualization.framework. Sono stati proposti due pacchetti per lavorare con i contenitori Linux: containerization e container, scritti in Swift e rilasciati con licenza Apache 2.0.

Il pacchetto Containerization fornisce un'API a basso livello per gestire le immagini dei contenitori nel formato OCI, scaricare contenitori da repository esterni, creare un filesystem root Ext4, garantire l'interazione di rete, costruire varianti del kernel Linux ad avvio rapido, creare macchine virtuali e avviare contenitori separati in essi. I contenitori possono essere associati a indirizzi IP specifici. Per organizzare il funzionamento dello stack di rete virtuale, associato a ciascun contenitore, viene utilizzato il framework vmnet.

Il tempo di avvio della macchina virtuale è inferiore a un secondo, grazie all'uso di una configurazione del kernel Linux ottimizzata e di un ambiente di sistema ridotto con un processo init leggero chiamato vminitd. L'interazione con il processo di inizializzazione avviene tramite l'API GRPC su vsock. Questa API consente di configurare i parametri dell'ambiente di lavoro e avviare sopra la macchina virtuale contenitori con il contenuto scelto dall'utente o processi isolati separati. macchina virtuale Il pacchetto Container è un'estensione dell'API Containerization, che implementa strumenti di alto livello in stile Docker per la creazione, il caricamento, l'avvio e l'arresto di immagini di contenitori Linux nel formato OCI. La gestione dei servizi durante l'avvio dei contenitori avviene tramite il gestore di sistema Launchd.

Lo strumento può essere utilizzato su macOS 15, ma per un funzionamento completo e per evitare problemi si raccomanda di usare la versione macOS 26 Beta 1. Ad esempio, in macOS 15 non funziona l'interazione di rete diretta tra i contenitori e è limitata l'associazione di singoli IP ai contenitori. È possibile lavorare su sistemi ARM Apple Silicon Mac (M1/M2/M3/M4), mentre i computer basati su processori Intel non sono supportati. Per avviare contenitori costruiti per l'architettura x86_64, viene utilizzato il traduttore delle istruzioni del processore Rosetta 2.

Lo strumento può essere utilizzato su macOS 15, ma per un funzionamento completo ed evitare problemi, si consiglia di usare la versione macOS 26 Beta 1. Ad esempio, su macOS 15 non è possibile il networking diretto tra i container e la connessione di singoli IP ai container è limitata. È possibile l'uso su sistemi ARM di Apple Silicon Mac (M1/M2/M3/M4); i computer basati su processori Intel non sono supportati. Per eseguire container progettati per l'architettura x86_64, si utilizza il traduttore di istruzioni per CPU Rosetta 2.

Apple ha rilasciato un toolkit per l'esecuzione di container Linux su macOS


Fonte: opennet.ru
Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster