Como usar o Docker e o Kubernetes

Uma imagem Docker é fornecida para você avaliar estes recursos. É possível fazer o download dessa imagem como parte do AIStreamer.

Observe que usar softwares de terceiros fica a seu critério. O Google não detém os direitos autorais de softwares de terceiros.

Pré-requisitos

Criar imagem do Docker

Acesse o diretório de processamento e execute a seguinte linha de comando na máquina host:

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

Testar a imagem do Docker no host local

Execute o seguinte comando no terminal da máquina host:

$ docker run -it $DOCKER_IMAGE /bin/bash

O comando retorna uma resposta semelhante ao exemplo a seguir.

root@e504724e76fc:/#

Para abrir outro terminal que se conecte ao Docker, execute o seguinte comando na máquina host:

$ docker exec -it e504724e76fc /bin/bash

Agora, você tem dois terminais de host no mesmo contêiner do Docker.

Configuração do ambiente de imagem do Docker

Algumas configurações de ambiente podem ser personalizadas em a imagem Docker.

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

Enviar a imagem Docker para o Google Cloud Container Registry

Execute o seguinte comando no terminal da máquina host:

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

Talvez seja necessário definir o controle de acesso.

Implantar em Google Cloud

Execute os seguintes comandos no terminal da máquina host:

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

Isso retorna uma resposta semelhante a esta:

root@$KUBE_ID-215855480-c4sqp:/#

Para abrir outro terminal que se conecte ao mesmo contêiner do Kubernetes em Google Cloud, execute a seguinte linha de comando na máquina host:

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

Agora, você tem dois terminais de host no mesmo contêiner do Kubernetes em Google Cloud.