Gli esempi della riga di comando seguenti funzionano in VMware Fusion.

Quando si crea una nuova immagine, per estrarre correttamente l'immagine di base da un registro Docker privato, utilizzare il comando vctl login per accedere prima al registro Docker privato o utilizzare l'opzione --credential per trasmettere un file JSON che archivia le credenziali del comando vctl build per l'autenticazione del registro. Ad esempio:

a

Codificare il nome utente e la password del registro Docker in Base64 con il comando seguente:

echo -n USER:PASSWORD | base64

b

Creare un file config.json con l'URL del registro Docker e la stringa codificata in Base64 generata nel passaggio 1.

{
                           "auths": {
                                          "https://index.docker.io/v2/": {
                                                         "auth": "xxxxxxxxxxxxxxx"
                                         }
                            }
}

c

Creare la nuova immagine la cui immagine di base si trova in un registro Docker privato, passando il file JSON al comando vctl build:

vctl build --file Dockerfile --tag docker.io/mynamespace/myrepo:1.0 --credential config.json .

Elencare i contenitori in esecuzione.

vctl ps

Elencare tutti i contenitori, inclusi i contenitori in esecuzione e i contenitori arrestati.

vctl ps --all

Eseguire un contenitore in modalità indipendente utilizzando l'immagine nginx, che è analoga a docker.io/library/nginx:latest.

vctl run --name myContainer -d nginx

Eseguire un contenitore utilizzando l'opzione --publish e l'immagine fluentd. In questo caso fluentd equivale a docker.io/library/fluentd:latest.

vctl run --name myContainer --publish 24224:24224/udp --publish 24224:24224 fluentd

Eseguire più contenitori e abilitare l'individuazione e la comunicazione tra loro.

L'utilità vctl non dispone di una subnet o di una funzionalità di collegamento per connettere più contenitori a una subnet.

Per abilitare la comunicazione tra più contenitori, avviare il contenitore con l'opzione --publish. In questo modo, la porta del contenitore viene associata alla porta dell'host in modo che il servizio fornito dal contenitore sia accessibile dall'esterno.

vctl run --name mydb -m 2048 -e MYSQL_ROOT_PASSWORD=password -p 3306:3306 mysql

vctl run --name mymatomo -m 4096 -p 8080:80 -e MATOMO_DATABASE_HOST=<Host_IP>:3306 matomo

Eseguire un contenitore utilizzando l'opzione --volume e l'immagine bonita. In questo caso bonita equivale a docker.io/library/bonita:latest.

vctl run --name myContainer -p 8080:8080 --volume ~/Documents/container:/opt/bonita bonita

Ottenere l'accesso alla shell in una macchina virtuale CRX.

Specificando il contenitore ospitato dalla macchina virtuale CRX.

vctl execvm --sh -c myContainer

Specificando il percorso VMX della macchina virtuale CRX.

Nota

Per ottenere il percorso VMX, eseguire il comando vctl describe myContainer e fare riferimento al valore di Host virtual machine nell'output.

vctl execvm --sh <Home_Folder_of_Your_Account>/.vctl/.r/vms/myContainer/myContainer.vmx

Eseguire un comando in una macchina virtuale CRX.

Specificando il contenitore ospitato dalla macchina virtuale CRX.

vctl execvm -c myContainer /bin/ls

Specificando il percorso VMX della macchina virtuale CRX.

Nota

Per ottenere il percorso VMX, eseguire il comando vctl describe myContainer e fare riferimento al valore di Host virtual machine nell'output.

vctl execvm <Home_Folder_of_Your_Account>/.vctl/.r/vms/myContainer/myContainer.vmx /bin/ls