Como usar o Docker e o Kubernetes

Uma imagem do 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 na imagem do 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 do Docker para o Container Registry do Google Cloud

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 no 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 conectando o mesmo contêiner do Kubernetes no Google Cloud, execute a linha de comando abaixo 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 no Google Cloud.