Saiba como configurar a porta do contêiner e o comando e os argumentos do ponto de entrada do contêiner.
Quando o Cloud Run inicia um contêiner, ele executa o comando entrypoint padrão e os argumentos de comando padrão da imagem. Se você quiser
modificar os argumentos de comando e o ponto de entrada padrão da imagem, use os
campos command
e args
na configuração do contêiner. O campo command
especifica o comando real executado pelo contêiner. O campo args
especifica
os argumentos transmitidos para esse comando.
Como configurar a porta do contêiner
Qualquer mudança na configuração leva à criação de uma nova revisão. As próximas revisões também recebem automaticamente essa configuração, a menos que você faça atualizações explícitas para alterá-la.
O contêiner precisa detectar a porta definida pela variável de ambiente PORT
em vez de uma porta codificada específica.
No entanto, se isso não for possível, configure quais solicitações de porta serão enviadas para o contêiner:
Console
Acesse o Cloud Run for Anthos no console do Google Cloud:
Clique em Criar serviço se estiver configurando um novo serviço em que fará uma implantação. Se você estiver configurando um serviço atual, clique nele e em Editar e implantar uma nova revisão.
Em Configurações avançadas, clique em Contêiner.
Especifique a porta em que você quer que as solicitações sejam enviadas, se não for o valor padrão de
8080
. Isso também define a variável de ambientePORT
.Clique em Avançar para acessar a próxima seção.
Na seção Configurar como este serviço é acionado, selecione qual conectividade você quer usar para invocar o serviço.
Clique em Criar para implantar a imagem no Cloud Run for Anthos e aguarde a conclusão da implantação.
Linha de comando
Para serviços existentes, atualize uma configuração de porta executando o comando
gcloud run services update
com os parâmetros a seguir:gcloud run services update SERVICE --port PORT
Substitua:
- SERVICE pelo nome do serviço;
- PORT pela porta para enviar solicitações. Observe que a porta padrão é
8080
.
Para novos serviços, defina a porta executando o comando
gcloud run deploy
com o parâmetro--port
:gcloud run deploy SERVICE --image=IMAGE_URL --port PORT
Substitua:
- SERVICE pelo nome do serviço;
- IMAGE_URL por uma referência à imagem de contêiner. Por
exemplo,
gcr.io/myproject/my-image:latest
; - PORT pela porta para a qual você quer enviar solicitações. A
porta padrão é
8080
.
YAML
Faça o download da configuração de um serviço existente para um
arquivo YAML com o comando gcloud run services describe
usando a
sinalização --format=export
.
Em seguida, modifique o arquivo YAML e implante
essas alterações com o comando gcloud beta run services replace
.
Modifique apenas os atributos especificados.
Faça o download da configuração do serviço em um arquivo chamado
service.yaml
no espaço de trabalho local:gcloud run services describe SERVICE --format export > service.yaml
Substitua SERVICE pelo nome do serviço do Cloud Run for Anthos.
No seu arquivo local, atualize o atributo
containerPort:
:apiVersion: serving.knative.dev/v1 kind: Service spec: template: spec: containers: - image: IMAGE_URL ports: - containerPort: PORT
Replace
- IMAGE_URL por uma referência à imagem de contêiner. Por
exemplo,
gcr.io/myproject/my-image:latest
; - PORT pela porta para a qual você quer enviar solicitações.
- IMAGE_URL por uma referência à imagem de contêiner. Por
exemplo,
Substitua o serviço pela nova configuração usando o seguinte comando:
gcloud beta run services replace service.yaml
Como configurar o comando e os argumentos do ponto de entrada do contêiner
Qualquer mudança na configuração leva à criação de uma nova revisão. As próximas revisões também recebem automaticamente essa configuração, a menos que você faça atualizações explícitas para alterá-la.
Quando o Cloud Run for Anthos inicia um contêiner, ele executa o comando
de ponto de entrada padrão da imagem.
Para especificar ou substituir o comando entrypoint e os argumentos definidos
na imagem do contêiner, defina as configurações command
e args
na configuração do contêiner do Cloud Run para Anthos.
É possível configurar comandos de ponto de entrada, argumentos ou ambos. O comando especificado no Cloud Run for Anthos modifica qualquer comando de ponto de entrada definido na imagem do contêiner. Se você optar por especificar apenas os argumentos, esses argumentos serão transmitidos e executados pelo comando entrypoint definido na imagem do contêiner.
No Cloud Run for Anthos, é possível configurar comandos e argumentos de ponto de entrada usando o console do Google Cloud, a Google Cloud CLI ou um arquivo YAML ao implantar um novo serviço, atualizar um serviço atual ou implante uma revisão:
Console
Acesse o Cloud Run for Anthos no console do Google Cloud:
Clique em Criar serviço se estiver configurando um novo serviço em que fará uma implantação. Se você estiver configurando um serviço atual, clique nele e em Editar e implantar uma nova revisão.
Em Configurações avançadas, clique em Contêiner.
Especifique o comando entrypoint e os argumentos que você quer que o contêiner execute durante a inicialização.
Clique em Avançar para acessar a próxima seção.
Na seção Configurar como este serviço é acionado, selecione qual conectividade você quer usar para invocar o serviço.
Clique em Criar para implantar a imagem no Cloud Run for Anthos e aguarde a conclusão da implantação.
Linha de comando
Opções de parâmetros de comando
-
Para especificar um argumento que contenha uma vírgula (
,
), escape cadaARG
com um delimitador diferente. Por exemplo, se você usar@
:--args "^@^arg,with,commas@anotherarg@ARG3..."
-
Para especificar vários conjuntos de pares de chave-valor, é
possível especificar vários parâmetros de legibilidade. Exemplo:
[...] --args "
ARG
1" \ --args "ARG
2" \ --args "ARG
3" -
Para usar sinais de igual (
=
) nos argumentos, é preciso especificar cada argumento usando o seguinte formato:gcloud run services ... \ --args "--repo-allowlist=github.com/example/example_demo" \ --args "--gh-webhook-secret=XX"
Para serviços atuais, atualize o comando entrypoint executando o comando
gcloud run services update
com os seguintes parâmetros:gcloud run services update SERVICE --command COMMAND --args ARG1,ARG2,ARG-N
Substitua:
- SERVICE pelo nome do serviço;
- Opcional: COMMAND com o comando que você quer que o contêiner seja executado durante a inicialização.
- Opcional: ARG1 com um ou mais argumentos para o comando que é executado durante a inicialização. Use uma lista delimitada por vírgulas para vários argumentos. Como formatar seus argumentos.
Para novos serviços, defina o comando entrypoint executando o comando
gcloud run deploy
com o parâmetro--command
:gcloud run deploy SERVICE --image=IMAGE_URL --command COMMAND --args ARG1,ARG2,ARG-N
Substitua:
- SERVICE pelo nome do serviço;
- IMAGE_URL por uma referência à imagem de contêiner. Por
exemplo,
gcr.io/myproject/my-image:latest
; - Opcional: COMMAND com o comando que você quer que o contêiner seja executado durante a inicialização.
- Opcional: ARG1 com um ou mais argumentos para o comando que é executado durante a inicialização. Use uma lista delimitada por vírgulas para vários argumentos. Como formatar seus argumentos.
YAML
Faça o download da configuração de um serviço existente para um
arquivo YAML com o comando gcloud run services describe
usando a
sinalização --format=export
.
Em seguida, modifique o arquivo YAML e implante
essas alterações com o comando gcloud beta run services replace
.
Modifique apenas os atributos especificados.
Faça o download da configuração do serviço em um arquivo chamado
service.yaml
no espaço de trabalho local:gcloud run services describe SERVICE --format export > service.yaml
Substitua SERVICE pelo nome do serviço do Cloud Run for Anthos.
No seu arquivo local, atualize os atributos
command
eargs
:apiVersion: serving.knative.dev/v1 kind: Service spec: template: spec: containers: - image: IMAGE_URL command: - COMMAND args: - "ARG1" - "ARG-N"
Substitua:
- IMAGE_URL por uma referência à imagem de contêiner. Por
exemplo,
gcr.io/myproject/my-image:latest
; - Opcional: COMMAND com o comando que você quer que o contêiner seja executado durante a inicialização.
- Opcional: ARG1 com um ou mais argumentos para o comando que é executado durante a inicialização. Use uma lista delimitada por vírgulas para mais de um argumento.
- IMAGE_URL por uma referência à imagem de contêiner. Por
exemplo,
Substitua o serviço pela nova configuração usando o seguinte comando:
gcloud beta run services replace service.yaml