Uso di Docker e Kubernetes

Per valutare queste funzionalità, viene fornita un'immagine Docker. Puoi scaricare questa immagine nell'ambito di AIStreamer.

Tieni presente che l'utilizzo di software di terze parti è a tua esclusiva discrezione. Google non detiene il copyright di software di terze parti.

Prerequisiti

Creazione immagine Docker

Vai 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 al seguente esempio.

root@e504724e76fc:/#

Per aprire un altro terminale che si connette 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 dell'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 in Google Cloud Container Registry

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 su 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 nello stesso container Kubernetes su Google Cloud.