Skip to main content

Collegarsi ad un container in esecuzione

docker exec [OPTIONS] CONTAINER COMMAND [ARG...]

Per collegare (attach) la shell del docker host alla shell di un container in esecuzione è necessario usare il comando 'docker container exec' specificando il nome del container e il comando con il quale vogliamo collegarci.

docker container exec -it adoring_merkle bash

L'uso di bash è utile per i container Linux, per i container Windows andrà usato per esempio pwsh.exe. Attenzione! 'adoring_merkle' è il nome del container sulle mie macchine, sostituitelo col nome del vostro container. Per sapere il nome visualizzate l'elenco dei Docker container in esecuzione. Per identificare il container si può usare il nome oppure l'ID. Come nel caso del lancio del container, abbiamo usato le opzioni -it per collegare la nostra shell a quella del container. La parte finale del comando è 'bash", il comando che vogliamo venga eseguito dal container all'ingresso.

Anche in questo caso per abbandonare la shell del container basta Ctrl+PQ, questo non fermerà il container.

Uso generico di exec

Il comando docker exec viene usato, in generale, per eseguire un comando all'interno di un container in esecuzione. Il comando verrà lanciato nella directory di default del container, o nella directory specificata nella direttiva WORKDIR del Dockerfile. Per impostare una directory particolare è possibile usare l'opzione --workdir o -w. Il comando deve essere un eseguibile e non può essere specificato tra apici.

Formazione e documentazione

Play with Docker

PWD è un "payground" Docker che consente agli utenti di interagire con i comandi Docker in pochi secondi e cominciare a sperimentare subito. Permette di avere una macchina virtuale Alpine Linux gratuita per 4 ore, accedibile da browser o shell SSH. E' possibile creare ed eseguire container Docker e persino creare cluster in Docker Swarm Mode. PWD include anche un sito di formazione composto da una vasta serie di laboratori Docker e quiz dal livello principiante al livello avanzato (training.play-with-docker.com).

Docker Registry

Uno dei registry più famoso di immagini Docker è Docker Hub. Potete partire da qui per scaricare (pull) l'immagine che vi server nel vostro Docker locale, a quel punto potrete iniziare ad usarla per far partire uno o più container Docker. Esistono altri registry, non è l'unico.