Uso di Docker e Kubernetes

Viene fornita un'immagine Docker per valutare queste funzionalità. Puoi scaricare questa immagine come parte di AIStreamer.

L'utilizzo di software di terze parti è a discrezione dell'utente. Google non è titolare del copyright del software di terze parti.

Prerequisiti

Creazione immagine Docker

Accedi alla directory di importazione ed esegui la seguente riga di comando sulla macchina host:

$ export DOCKER_IMAGE=gcr.io/gcp-project-name/docker-image-name:version
$ docker build -t $DOCKER_IMAGE -f env/Dockerfile .

Prova l'immagine Docker sul tuo host locale

Esegui questo comando nel terminale per la macchina host:

$ docker run -it $DOCKER_IMAGE /bin/bash

Il comando restituisce una risposta simile all'esempio seguente.

root@e504724e76fc:/#

Per aprire un altro terminale connesso a Docker, esegui questo comando sulla macchina host:

$ docker exec -it e504724e76fc /bin/bash

Ora hai entrambi i terminali host nello stesso container Docker.

Impostazione dell'ambiente immagine Docker

Alcune impostazioni dell'ambiente possono essere personalizzate nell'immagine Docker.

#set up environment for Google Video Intelligence Streaming API
ENV SRC_DIR /googlesrc  #Source code directory
ENV BIN_DIR /google     #Binary directory

Esegui il push dell'immagine Docker al registro dei container di Google Cloud

Esegui questo comando nel terminale per la macchina host:

$ gcloud docker --verbosity debug -- push $DOCKER_IMAGE

Potresti dover impostare controllo dell'accesso.

Esegui il deployment in Google Cloud

Esegui questi comandi nel terminale per la macchina host:

$ export KUBE_ID=any_string_you_like
$ kubectl run -it $KUBE_ID --image=$DOCKER_IMAGE -- /bin/bash

Viene restituita una risposta simile alla seguente:

root@$KUBE_ID-215855480-c4sqp:/#

Per aprire un altro terminale che si connette allo stesso container Kubernetes su Google Cloud, esegui la seguente riga di comando sulla macchina host:

$ kubectl exec -it $KUBE_ID-215855480-c4sqp -- /bin/bash

Ora hai entrambi i terminali host che si trovano nello stesso container Kubernetes su Google Cloud.