Personalizzare le immagini container di Cloud Shell

Questa pagina descrive come creare e utilizzare un'immagine Docker personalizzata come ambiente Cloud Shell per tutorial e attività di apprendimento.

Per creare un'esperienza Cloud Shell personalizzata, crea un'immagine Docker che funzioni come ambiente Cloud Shell personalizzato con i pacchetti aggiuntivi e le configurazioni personalizzate specificati. L'immagine Docker deve essere basata sull'immagine Cloud Shell di base e ospitata in Container Registry.

Creare un'immagine Docker personalizzata


Per seguire le indicazioni dettagliate per questa attività direttamente nell'editor di Cloud Shell, fai clic su Procedura guidata:

Procedura guidata


Crea la tua immagine Docker personalizzata seguendo queste istruzioni:

  1. In una scheda del terminale Cloud Shell, esegui il comando seguente per creare un'immagine personalizzata boilerplate in un repository ospitato da Cloud Source Repositories:

    cloudshell env create-custom-image NEW_REPO_NAME
    

    In alternativa, se preferisci eseguire il deployment manuale in Container Registry o utilizzare il tuo flusso di automazione, puoi creare un nuovo Dockerfile vuoto e passare al passaggio 3.

  2. Apri il nuovo Dockerfile seguendo le istruzioni stampate sulla riga di comando:

    cd $HOME/NEW_REPO_NAME && cloudshell edit Dockerfile
    
  3. Aggiungi eventuali pacchetti aggiuntivi che vuoi rendere disponibili nella tua esperienza Cloud Shell sotto la prima riga. Ad esempio:

    FROM gcr.io/cloudshell-images/cloudshell:latest
    RUN apt-get -y install lsof
    

    La prima riga del Dockerfile,FROM gcr.io/cloudshell-images/cloudshell:latest, fa riferimento all'immagine di base di Cloud Shell e non deve essere rimossa.

  4. Crea l'immagine localmente eseguendo:

    cloudshell env build-local
    
  5. Testa l'immagine localmente e verifica che i pacchetti installati siano presenti eseguendo:

    cloudshell env run
    

    Per uscire dal test, esegui:

    exit
    
  6. Esegui il commit delle modifiche al codice localmente:

    git commit -a -m "Initial custom environment check-in."
    
  7. Esegui il push delle modifiche al codice in Cloud Source Repositories:

    git push origin master
    
  8. Infine, esegui il push dell'immagine personalizzata in Container Registry:

    cloudshell env push
    

Per utilizzare l'immagine personalizzata con i link Apri in Cloud Shell, devi prima renderla pubblica. Per la procedura per rendere pubblica un'immagine personalizzata, consulta la guida al controllo dell'accesso di Container Registry.

Dopo aver configurato le impostazioni di accesso corrette, puoi aggiornare il link Apri in Cloud Shell per specificare i parametri cloudshell_git_repo e cloudshell_image. Ad esempio, per aggiungere un pulsante Apri in Cloud Shell, modifica gli URL nell'esempio seguente e poi aggiungi un link simile al seguente al tuo file Markdown:

[![Open in Cloud Shell](https://gstatic.com/cloudssh/images/open-btn.svg)](https://shell.cloud.google.com/cloudshell/editor?cloudshell_git_repo=REPO_URL&cloudshell_image=DOCKER_IMAGE_URL)

Sostituisci i seguenti valori:

  • REPO_URL: URL della posizione del repository
  • DOCKER_IMAGE_URL: URL dell'immagine Docker

Per saperne di più su questi e altri parametri, consulta Apri in Cloud Shell.

Mantenere aggiornata l'immagine del container personalizzato

Il container personalizzato deve essere basato sull'immagine Cloud Shell pubblica più recente per funzionare su Cloud Shell. Ti consigliamo di eseguire ricostruzioni settimanali per mantenere aggiornata l'immagine personalizzata.