Immagini di build personalizzate e aggiornamenti live dei pacchetti - AWS Amplify Ospitare

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Immagini di build personalizzate e aggiornamenti live dei pacchetti

Immagini di build personalizzate

Puoi utilizzare un'immagine di build personalizzata per fornire un ambiente di compilazione personalizzato per un'app Amplify. Se hai dipendenze specifiche che richiedono molto tempo per essere installate durante una build utilizzando il contenitore predefinito di Amplify, puoi creare la tua immagine Docker e farvi riferimento durante una build. Le immagini possono essere ospitate su Amazon Elastic Container Registry Public.

Nota

Le impostazioni di build sono visibili nel menu delle impostazioni dell'app della console Amplify solo quando un'app è configurata per la distribuzione continua e connessa a un repository git. Per istruzioni su questo tipo di distribuzione, consulta Guida introduttiva al codice esistente.

Requisiti relativi all'immagine di creazione personalizzata

Affinché un'immagine di build personalizzata funzioni come immagine di build Amplify, deve soddisfare i seguenti requisiti:

  1. Una distribuzione Linux che supporta la GNU C Library (glibc), come Amazon Linux, compilata per l'architettura x86-64.

  2. cURL: quando avviamo la tua immagine personalizzata, scarichiamo il nostro strumento di esecuzione della compilazione nel tuo container, pertanto è necessario che il cURL sia presente. Se manca questa dipendenza, la compilazione fallisce immediatamente senza alcun output poiché il nostro build-runner non è in grado di produrre alcun output.

  3. Git: per clonare il tuo repository Git, è necessario che Git sia installato nell'immagine. Se manca questa dipendenza, la fase di clonazione del repository avrà esito negativo.

  4. OpenSSH: per clonare in modo sicuro il tuo repository, richiediamo a OpenSSH di configurare temporaneamente la chiave SSH durante la compilazione. Il pacchetto OpenSSH fornisce i comandi necessari al build runner per eseguire questa operazione.

  5. Bash e The Bourne Shell: queste due utilità vengono utilizzate per eseguire comandi in fase di compilazione. Se non sono installate, le tue build potrebbero fallire prima di iniziare.

  6. Node.js+npm: il nostro build runner non installa Node. Invece, si basa sull'installazione di Node e NPM nell'immagine. Questa condizione è necessaria per le compilazioni che richiedono pacchetti NPM o comandi specifici di Node. Tuttavia, consigliamo vivamente di installarli perché, quando sono presenti, il build runner Amplify può utilizzare questi strumenti per migliorare l'esecuzione della build. La funzione di sovrascrittura dei pacchetti di Amplify utilizza NPM per installare il pacchetto Hugo-extended quando si imposta un override per Hugo.

I seguenti pacchetti non sono necessari, ma consigliamo vivamente di installarli.

  1. NVM (Node Version Manager): Ti consigliamo di installare questo gestore di versioni se devi gestire diverse versioni diNode. Quando imposti un override, la funzionalità di sostituzione dei pacchetti di Amplify utilizza la funzionalità di sostituzione dei pacchetti NVM per modificare le versioni di Node.js prima di ogni build.

  2. Wget: Amplify può utilizzare l'utilità per scaricare file durante Wget il processo di compilazione. Ti consigliamo di installarlo nella tua immagine personalizzata.

  3. Tar: Amplify può utilizzare l'utilità per decomprimere i file scaricati durante Tar il processo di compilazione. Ti consigliamo di installarlo nella tua immagine personalizzata.

Configurazione di un'immagine di build personalizzata

Per configurare un'immagine di build personalizzata ospitata in Amazon ECR
  1. Consulta la Guida introduttiva alla guida per utenti pubblici di Amazon ECR per configurare un repository Amazon ECR Public con un'immagine Docker.

  2. Accedi AWS Management Console e apri la console Amplify.

  3. Scegli l'app per cui desideri configurare un'immagine di build personalizzata.

  4. Nel riquadro di navigazione, scegli Impostazioni app, Impostazioni di creazione.

  5. Nella pagina delle impostazioni di creazione, nella sezione Impostazioni dell'immagine di creazione, scegli Modifica.

  6. Nella finestra di dialogo Modifica le impostazioni dell'immagine di costruzione, espandi il menu Crea immagine e scegli Crea immagine.

  7. Inserisci il nome del repository Amazon ECR Public che hai creato nel primo passaggio. Qui è ospitata l'immagine della tua build. Ad esempio, se il nome del tuo repository è ecr-examplerepo, devi inserire. public.ecr.aws/xxxxxxxx/ecr-examplerepo

  8. Selezionare Salva.

Aggiornamenti dei pacchetti in tempo reale

Gli aggiornamenti live dei pacchetti consentono di specificare le versioni dei pacchetti e delle dipendenze da utilizzare nell'immagine di build predefinita di Amplify. L'immagine di build predefinita include diversi pacchetti e dipendenze preinstallati (ad esempio Hugo, Amplify CLI, Yarn, ecc.). Con gli aggiornamenti live dei pacchetti puoi sovrascrivere la versione di queste dipendenze e specificare una versione specifica o assicurarti che sia sempre installata la versione più recente.

Se gli aggiornamenti live dei pacchetti sono abilitati, prima dell'esecuzione della build, il build runner aggiorna (o esegue il downgrade) delle dipendenze specificate. Ciò aumenta il tempo di compilazione proporzionalmente al tempo necessario per aggiornare le dipendenze, ma il vantaggio è che puoi assicurarti che venga utilizzata la stessa versione di una dipendenza per creare la tua app.

avvertimento

L'impostazione della versione di Node.js sulla versione più recente causa il fallimento delle build. È invece necessario specificare una versione esatta di Node.js, ad esempio 1821.5, ov0.1.2.

Configurazione degli aggiornamenti dei pacchetti in tempo reale

Per configurare gli aggiornamenti dei pacchetti in tempo reale
  1. Accedi AWS Management Console e apri la console Amplify.

  2. Scegli l'app per cui desideri configurare gli aggiornamenti dei pacchetti in tempo reale.

  3. Nel pannello di navigazione, scegli Impostazioni app, Crea impostazioni.

  4. Nella pagina delle impostazioni di creazione, nella sezione Impostazioni dell'immagine di creazione, scegli Modifica.

  5. Nella finestra di dialogo Modifica le impostazioni dell'immagine di compilazione, espandi l'elenco Aggiungi versione sostitutiva del pacchetto e scegli il pacchetto che desideri modificare.

    La schermata seguente mostra la finestra di dialogo Modifica impostazioni dell'immagine di compilazione con l'elenco ampliato di Add package version override.

    
                     La finestra di dialogo Modifica impostazioni dell'immagine di compilazione nella console Amplify con l'elenco Add package override è stato espanso.
  6. Per Versione, mantieni l'ultima versione predefinita o inserisci una versione specifica della dipendenza. Se utilizzi la versione più recente, la dipendenza verrà sempre aggiornata all'ultima versione disponibile.

  7. Selezionare Salva.