Vai al paragrafo

Cos'è Skopeo?

Copia URL

Skopeo è uno strumento per la gestione, l'ispezione, la firma e il trasferimento di immagini di container e repository di immagini su sistemi Linux, Windows e MacOS. Come Podman e Buildah, Skopeo è un progetto open source promosso dalla community che non richiede l'esecuzione di un container daemon.

Skopeo consente l'ispezione delle immagini in un registro remoto senza richiedere il download dell'intera immagine e dei relativi livelli; costituisce perciò una soluzione modulare per lavorare con immagini di container in diversi formati, incluse le immagini Open Container Initiative (OCI) e Docker.

Un'immagine di container è un file con un codice predisposto per essere eseguito in un processo isolato. Le immagini dei container sono costituite da due parti.

Archivio tar

La prima parte è formata da uno o più archivi tar del file system del container. Un archivio tar è una raccolta di file e la directory del file system contiene tutto il codice e i file di configurazione necessari per eseguire un'applicazione.

File JSON

La seconda parte è costituita dai file JSON che descrivono l'applicazione, forniscono la configurazione data dallo sviluppatore per eseguire il container, trasmettono i dati tra l'applicazione e il server e archiviano i metadati sui singoli componenti dell'immagine e su come utilizzarli per riferimento.

Un repository di container è un gruppo di immagini dei container che forniscono diverse versioni di un'applicazione, e un registro di container è il server che permette di accedere alle immagini o caricarne di nuove. 

Skopeo, dal greco "osservo da lontano", è il primo strumento per container sviluppato dagli ingegneri di Red Hat in collaborazione con la community open source. Skopeo, insieme a Podman e Buildah consente la gestione dei container OCI. In poche parole, Podman esegue i container, Buildah li realizza e Skopeo li trasporta. Insieme, Podman, Buildah e Skopeo, sono un set di strumenti funzionali e versatili messi a tua disposizione per l'ambiente containerizzato.

Skopeo ispeziona le immagini con il comando skopeo inspect. Prima del suo rilascio, per ispezionare un'immagine era necessario estrarla per intero anche se occorreva ispezionare solo alcuni metadati. Il comando Skopeo inspect mostra le proprietà dell'immagine, inclusi i livelli, i tag e le etichette, evitando così di eseguire il pull dell'immagine nell'host. In questo modo è possibile ottenere le informazioni su un repository o un tag senza consumare risorse. 

Skopeo consente anche di eliminare un'immagine da un repository e di sincronizzare il repository di un'immagine esterna con un registro interno, per i deployment di reti disconnesse (anche dette air gap) in cui la sicurezza è un requisito chiave. Quando richiesto dal repository, Skopeo può comunicare le credenziali e i certificati appropriati per l'autenticazione.  

Il comando Skopeo sync consente di creare copie dirette da registro a registro per l'utilizzo online e da registro a file e da file a registro per la preparazione di ambienti disconnessi. A differenza del comando skopeo copy, che presuppone un'azione eseguita sulla copia richiesta, skopeo sync è progettato per una maggiore velocità nelle risincronizzazioni regolari di grandi repository con poche modifiche. Oltre che direttamente da riga di comando, l'operazione di sincronizzazione può essere configurata in un file config, che consente solo la sincronizzazione di un sottoinsieme di tag da un repository di grandi dimensioni.

Se l'ispezione segnala la necessità di copiare un'immagine container da un tipo di posizione o storage a un altro, è possibile utilizzare il comando Skopeo copy. Lo strumento consente di copiare le immagini dei container tra registri come docker.io, quay.io e il registro dei container interno o i diversi meccanismi di storage del sistema locale. La copia diretta da registro a registro è veloce e mantiene immutata la forma e il digest del manifest dell'immagine se il registro di destinazione lo consente. Per copiare le immagini tra i registri non è necessario utilizzare dischi locali né occorre spazio disponibile sul disco locale. Skopeo transita facilmente anche tra storage di motori di container e persino tra directory. Viene utilizzato frequentemente nei sistemi CI/CD per tenere aggiornati i registri dei container e gestire lo storage nei server di container.

Strumenti flessibili

Skopeo fa parte di una suite modulare di strumenti per container che offre molti altri vantaggi. Introdurre modifiche significative in uno strumento monolitico senza che questo comporti interruzioni o disservizi per gli utenti che già lo utilizzano non è semplice. L'evoluzione di strumenti più specializzati e leggeri come Skopeo, Podman e Buildah è molto più rapida. Disporre di diversi strumenti permette a ognuno di essi di realizzare uno scopo specifico, e rende possibile aggiungerne di nuovi per aumentare le funzionalità o per ottenere nuovi risultati testando i tool esistenti con architetture e progetti potenzialmente incompatibili. Strumenti di dimensioni inferiori e più modulari sono anche più semplici da proteggere.

Così come parti delle funzionalità di Podman provengono dalla libreria libpod, che consente di condividere il codice con altri strumenti, anche la funzionalità di Skopeo è implementata in una libreria. La libreria di immagini/container di Skopeo è condivisa con altri strumenti per container tra cui Podman, Buildah e CRI-O ed è compatibile con l'interfaccia a riga di comando di Docker. 

Sicurezza e accessibilità

I vantaggi principali che derivano dall'utilizzo congiunto di Podman, Skopeo e Buildah includono:

  • Gestione di container rootless. Gli utenti possono creare, eseguire e gestire i container senza richiedere processi con privilegi di amministratore, il che si traduce in ambienti per container più accessibili senza compromessi per la sicurezza.
  • Architettura daemonless. I daemon richiedono l'accesso amministrativo (bypassando anche la richiesta di verifica degli amministratori) per la lettura dei file, l'installazione dei programmi, la modifica delle applicazioni e altro. Per questo i daemon sono i destinatari ideali di attacchi perpetrati da criminali informatici che puntano a introdursi nel sistema host prendendo il controllo dei container. 
  • Integrazione nativa con systemd. L'utilizzo di Podman e degli strumenti per container associati consente di creare file unit systemd e di eseguire i container come servizi di sistema.

Kubernetes 

Kubernetes è una piattaforma di orchestrazione open source basata su container che consente di automatizzare molti dei processi manuali necessari per il deployment, la gestione e la scalabilità delle applicazioni containerizzate. Se esegui un sistema CI/CD in Kubernetes o utilizzi Red Hat OpenShift® per creare le immagini dei container, può essere necessario distribuire tali immagini su registri di container diversi. Skopeo è lo strumento essenziale per queste attività.

High Performance Computing (HPC)

Gli utenti che eseguono una versione precedente del sistema operativo nel sistema host potrebbero voler utilizzare Skopeo o altri strumenti per sfruttare le funzionalità e gli aggiornamenti più recenti. Una limitazione comune negli ambienti di HPC è che agli utenti rootless non è consentito installare pacchetti nell'host. Con la maggiore diffusione di Podman negli ambienti HPC, bastano pochi comandi per eseguire il container Skopeo con Podman per attività specifiche, senza che sia necessario l'accesso root. 

Red Hat Enterprise Linux semplifica lo sviluppo dei container riducendo il numero di repository e fornendo più strumenti agli sviluppatori. Una sottoscrizione a Red Hat Enterprise Linux, oltre a includere già strumenti per container come Podman, Buildah e Skopeo, offre la stabilità necessaria a supportare le esigenze dei container e delle relative immagini. Oltre a questi strumenti, Red Hat fornisce immagini di base sulle quali realizzare le tue immagini personali. 

Esegui, realizza e condividi immagini di container utilizzando gli strumenti della riga di comando di Red Hat Enterprise Linux, le Red Hat Universal Base Image (UBI), il repository in Red Hat Quay e il repository Supplemental, tutti componenti che riducono le complessità di sviluppo dei container.

Keep reading

ARTICOLO

Container e VM

I container Linux e le macchine virtuali (VM) sono entrambi pacchetti di ambienti di elaborazione che combinano vari componenti IT e li isolano dal resto del sistema.

ARTICOLO

Cos'è l'orchestrazione dei container?

Definiamo orchestrazione dei container l'automazione dei processi di deployment, gestione, scalabilità e networking dei container.

ARTICOLO

Cos'è un container Linux?

Un container Linux è un insieme di processi, isolati dal resto del sistema, che esegue un'immagine distinta contenente tutti i file necessari per supportare tali processi.

Scopri di più su Red Hat Enterprise Linux

Prodotti

Una base stabile e versatile ideale per rilasciare nuove applicazioni, virtualizzare gli ambienti e ottenere un cloud ibrido più sicuro.

Risorse

Ebook

Estendi l'innovazione e l'efficienza operativa con Linux.

Continua a leggere

CHECKLIST

L'azienda tecnologica globale promuove l'utilizzo del 5G all'edge della rete

CHECKLIST

L'importanza del sistema operativo

CHECKLIST

Perché Red Hat Enterprise Linux è meglio di CentOS Stream per l'uso in produzione

CHECKLIST

5 modi per rinnovare l'ambiente SAP con Red Hat e AWS

CHECKLIST

4 modi con cui Red Hat e Nutanix risolvono le sfide dell'IT moderno

INFOGRAFICA

Red Hat Enterprise Linux su Microsoft Azure

SCHEDA INFORMATIVA

Guida alle sottoscrizioni Red Hat Enterprise Linux

SCHEDA TECNICA

Automazione e gestione con Red Hat Enterprise Linux

SCHEDA TECNICA

Red Hat Enterprise Linux per i carichi di lavoro all'edge

SCHEDA TECNICA

Passa da CentOS Linux a Red Hat Enterprise Linux

SCHEDA TECNICA

Red Hat Edge

SCHEDA TECNICA

Soluzioni Red Hat per SAP

SINTESI

Prestazioni di Red Hat Enterprise Linux

SINTESI

Sicurezza e conformità con Red Hat Enterprise Linux

SINTESI

Incrementa la sicurezza e la coerenza del cloud ibrido

SINTESI

Percorso per l'acquisizione di competenze per Red Hat Enterprise Linux

SINTESI

Incrementa prestazioni e agilità del database

SINTESI

Missione compiuta: edge computing nello spazio

PANORAMICA

Riduci i downtime di SAP HANA con la tecnologia Red Hat

PANORAMICA

Semplifica la transizione al cloud con Red Hat e Google Cloud

PANORAMICA

Red Hat Enterprise Linux for SAP Solutions

EBOOK

Nove motivi per provare Red Hat Enterprise Linux 9

EBOOK

Ottieni il massimo dall'ambiente operativo Linux

EBOOK

Red Hat Enterprise Linux e Microsoft Azure

EBOOK

Un framework IT efficiente come base per il successo dell'impresa moderna

EBOOK

La standardizzazione come strategia per migliorare l'efficienza IT

EBOOK

Apri le porte a nuove possibilità di innovazione e crescita nelle tre aree chiave dell'IT, con Red Hat

EBOOK

10 motivi per scegliere Red Hat per carichi di lavoro SAP

Formazione

Corso di formazione gratuito

Red Hat Enterprise Linux Technical Overview