Esempi di App Runner che utilizzano AWS CLI - AWS Command Line Interface

Esempi di App Runner che utilizzano AWS CLI

Gli esempi di codice seguenti mostrano come eseguire azioni e implementare scenari comuni utilizzando AWS Command Line Interface con App Runner.

Le operazioni sono estratti di codice da programmi più grandi e devono essere eseguite nel contesto. Sebbene le operazioni mostrino come richiamare le singole funzioni del servizio, è possibile visualizzarle contestualizzate negli scenari correlati.

Ogni esempio include un link al codice sorgente completo, dove è possibile trovare le istruzioni su come configurare ed eseguire il codice nel contesto.

Argomenti

Operazioni

L’esempio di codice seguente mostra come utilizzare associate-custom-domain.

AWS CLI

Come associare un nome di dominio e il sottodominio www a un servizio

Nell’esempio seguente, associate-custom-domain associa un nome di dominio personalizzato controllato dall’utente a un servizio App Runner. Il nome di dominio è il dominio root example.com, incluso il sottodominio speciale www.example.com.

aws apprunner associate-custom-domain \ --cli-input-json file://input.json

Contenuto di input.json.

{ "ServiceArn": "arn:aws:apprunner:us-east-1:123456789012:service/python-app/8fe1e10304f84fd2b0df550fe98a71fa", "DomainName": "example.com", "EnableWWWSubdomain": true }

Output:

{ "CustomDomain": { "CertificateValidationRecords": [ { "Name": "_70d3f50a94f7c72dc28784cf55db2f6b.example.com", "Status": "PENDING_VALIDATION", "Type": "CNAME", "Value": "_1270c137383c6307b6832db02504c4b0.bsgbmzkfwj.acm-validations.aws." }, { "Name": "_287870d3f50a94f7c72dc4cf55db2f6b.www.example.com", "Status": "PENDING_VALIDATION", "Type": "CNAME", "Value": "_832db01270c137383c6307b62504c4b0.mzkbsgbfwj.acm-validations.aws." } ], "DomainName": "example.com", "EnableWWWSubdomain": true, "Status": "CREATING" }, "DNSTarget": "psbqam834h.us-east-1.awsapprunner.com", "ServiceArn": "arn:aws:apprunner:us-east-1:123456789012:service/python-app/8fe1e10304f84fd2b0df550fe98a71fa" }

L’esempio di codice seguente mostra come utilizzare create-auto-scaling-configuration.

AWS CLI

Come creare una configurazione di dimensionamento automatico ad elevata disponibilità

Nell’esempio seguente, create-auto-scaling-configuration crea una configurazione del dimensionamento automatico ottimizzata per la disponibilità elevata impostando MinSize su 5. Con questa configurazione, App Runner prova a distribuire le istanze del servizio sul maggior numero possibile di zone di disponibilità, fino a cinque, a seconda della Regione AWS.

La chiamata restituisce un oggetto AutoScalingConfiguration con le altre impostazioni configurate sui valori predefiniti. Nell’esempio, questa è la prima chiamata per creare una configurazione denominata high-availability. La revisione è impostata su 1 ed è l’ultima revisione.

aws apprunner create-auto-scaling-configuration \ --cli-input-json file://input.json

Contenuto di input.json.

{ "AutoScalingConfigurationName": "high-availability", "MinSize": 5 }

Output:

{ "AutoScalingConfiguration": { "AutoScalingConfigurationArn": "arn:aws:apprunner:us-east-1:123456789012:autoscalingconfiguration/high-availability/1/2f50e7656d7819fead0f59672e68042e", "AutoScalingConfigurationName": "high-availability", "AutoScalingConfigurationRevision": 1, "CreatedAt": "2020-11-03T00:29:17Z", "Latest": true, "Status": "ACTIVE", "MaxConcurrency": 100, "MaxSize": 50, "MinSize": 5 } }

L’esempio di codice seguente mostra come utilizzare create-connection.

AWS CLI

Come creare una connessione GitHub

Nell’esempio seguente, create-connection crea una connessione a un repository di codice GitHub privato. Lo stato della connessione dopo una chiamata riuscita è PENDING_HANDSHAKE. Questo perché l’handshake di autenticazione con il provider non è ancora avvenuto. Completa l’handshake utilizzando la console App Runner.

aws apprunner create-connection \ --cli-input-json file://input.json

Contenuto di input.json.

{ "ConnectionName": "my-github-connection", "ProviderType": "GITHUB" }

Output:

{ "Connection": { "ConnectionArn": "arn:aws:apprunner:us-east-1:123456789012:connection/my-github-connection", "ConnectionName": "my-github-connection", "Status": "PENDING_HANDSHAKE", "CreatedAt": "2020-11-03T00:32:51Z", "ProviderType": "GITHUB" } }

Per ulteriori informazioni, consulta Gestione delle connessioni di App Runner nella Guida per gli sviluppatori di AWS App Runner.

  • Per informazioni dettagliate sull’API, consulta CreateConnection in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare create-service.

AWS CLI

Esempio 1: creare un servizio di repository di codice sorgente

L’esempio create-service seguente crea un servizio App Runner basato su un repository di codice sorgente Python.

aws apprunner create-service \ --cli-input-json file://input.json

Contenuto di input.json.

{ "ServiceName": "python-app", "SourceConfiguration": { "AuthenticationConfiguration": { "ConnectionArn": "arn:aws:apprunner:us-east-1:123456789012:connection/my-github-connection/e7656250f67242d7819feade6800f59e" }, "AutoDeploymentsEnabled": true, "CodeRepository": { "RepositoryUrl": "https://github.com/my-account/python-hello", "SourceCodeVersion": { "Type": "BRANCH", "Value": "main" }, "CodeConfiguration": { "ConfigurationSource": "API", "CodeConfigurationValues": { "Runtime": "PYTHON_3", "BuildCommand": "pip install -r requirements.txt", "StartCommand": "python server.py", "Port": "8080", "RuntimeEnvironmentVariables": [ { "NAME": "Jane" } ] } } } }, "InstanceConfiguration": { "CPU": "1 vCPU", "Memory": "3 GB" } }

Output:

{ "OperationId": "17fe9f55-7e91-4097-b243-fcabbb69a4cf", "Service": { "CreatedAt": "2020-11-20T19:05:25Z", "UpdatedAt": "2020-11-20T19:05:25Z", "ServiceArn": "arn:aws:apprunner:us-east-1:123456789012:service/python-app/8fe1e10304f84fd2b0df550fe98a71fa", "ServiceId": "8fe1e10304f84fd2b0df550fe98a71fa", "ServiceName": "python-app", "ServiceUrl": "psbqam834h.us-east-1.awsapprunner.com", "SourceConfiguration": { "AuthenticationConfiguration": { "ConnectionArn": "arn:aws:apprunner:us-east-1:123456789012:connection/my-github-connection/e7656250f67242d7819feade6800f59e" }, "AutoDeploymentsEnabled": true, "CodeRepository": { "CodeConfiguration": { "CodeConfigurationValues": { "BuildCommand": "pip install -r requirements.txt", "Port": "8080", "Runtime": "PYTHON_3", "RuntimeEnvironmentVariables": [ { "NAME": "Jane" } ], "StartCommand": "python server.py" }, "ConfigurationSource": "Api" }, "RepositoryUrl": "https://github.com/my-account/python-hello", "SourceCodeVersion": { "Type": "BRANCH", "Value": "main" } } }, "Status": "OPERATION_IN_PROGRESS", "InstanceConfiguration": { "CPU": "1 vCPU", "Memory": "3 GB" } } }

Esempio 2: creare un servizio di repository di codice sorgente

L’esempio create-service seguente crea un servizio App Runner basato su un repository di codice sorgente Python.

aws apprunner create-service \ --cli-input-json file://input.json

Contenuto di input.json.

{ "ServiceName": "python-app", "SourceConfiguration": { "AuthenticationConfiguration": { "ConnectionArn": "arn:aws:apprunner:us-east-1:123456789012:connection/my-github-connection/e7656250f67242d7819feade6800f59e" }, "AutoDeploymentsEnabled": true, "CodeRepository": { "RepositoryUrl": "https://github.com/my-account/python-hello", "SourceCodeVersion": { "Type": "BRANCH", "Value": "main" }, "CodeConfiguration": { "ConfigurationSource": "API", "CodeConfigurationValues": { "Runtime": "PYTHON_3", "BuildCommand": "pip install -r requirements.txt", "StartCommand": "python server.py", "Port": "8080", "RuntimeEnvironmentVariables": [ { "NAME": "Jane" } ] } } } }, "InstanceConfiguration": { "CPU": "1 vCPU", "Memory": "3 GB" } }

Output:

{ "OperationId": "17fe9f55-7e91-4097-b243-fcabbb69a4cf", "Service": { "CreatedAt": "2020-11-20T19:05:25Z", "UpdatedAt": "2020-11-20T19:05:25Z", "ServiceArn": "arn:aws:apprunner:us-east-1:123456789012:service/python-app/8fe1e10304f84fd2b0df550fe98a71fa", "ServiceId": "8fe1e10304f84fd2b0df550fe98a71fa", "ServiceName": "python-app", "ServiceUrl": "psbqam834h.us-east-1.awsapprunner.com", "SourceConfiguration": { "AuthenticationConfiguration": { "ConnectionArn": "arn:aws:apprunner:us-east-1:123456789012:connection/my-github-connection/e7656250f67242d7819feade6800f59e" }, "AutoDeploymentsEnabled": true, "CodeRepository": { "CodeConfiguration": { "CodeConfigurationValues": { "BuildCommand": "pip install -r requirements.txt", "Port": "8080", "Runtime": "PYTHON_3", "RuntimeEnvironmentVariables": [ { "NAME": "Jane" } ], "StartCommand": "python server.py" }, "ConfigurationSource": "Api" }, "RepositoryUrl": "https://github.com/my-account/python-hello", "SourceCodeVersion": { "Type": "BRANCH", "Value": "main" } } }, "Status": "OPERATION_IN_PROGRESS", "InstanceConfiguration": { "CPU": "1 vCPU", "Memory": "3 GB" } } }

Esempio 3: creare un servizio di repository di immagini di origine

Nell’esempio seguente, create-service crea un servizio App Runner basato su un’immagine archiviata in Elastic Container Registry (ECR).

aws apprunner create-service \ --cli-input-json file://input.json

Contenuto di input.json.

{ "ServiceName": "golang-container-app", "SourceConfiguration": { "AuthenticationConfiguration": { "AccessRoleArn": "arn:aws:iam::123456789012:role/my-ecr-role" }, "AutoDeploymentsEnabled": true, "ImageRepository": { "ImageIdentifier": "123456789012.dkr.ecr.us-east-1.amazonaws.com/golang-app:latest", "ImageConfiguration": { "Port": "8080", "RuntimeEnvironmentVariables": [ { "NAME": "Jane" } ] }, "ImageRepositoryType": "ECR" } }, "InstanceConfiguration": { "CPU": "1 vCPU", "Memory": "3 GB" } }

Output:

{ "OperationId": "17fe9f55-7e91-4097-b243-fcabbb69a4cf", "Service": { "CreatedAt": "2020-11-06T23:15:30Z", "UpdatedAt": "2020-11-06T23:15:30Z", "ServiceArn": "arn:aws:apprunner:us-east-1:123456789012:service/golang-container-app/51728f8a20ce46d39b25398a6c8e9d1a", "ServiceId": "51728f8a20ce46d39b25398a6c8e9d1a", "ServiceName": "golang-container-app", "ServiceUrl": "psbqam834h.us-east-1.awsapprunner.com", "SourceConfiguration": { "AuthenticationConfiguration": { "AccessRoleArn": "arn:aws:iam::123456789012:role/my-ecr-role" }, "AutoDeploymentsEnabled": true, "ImageRepository": { "ImageIdentifier": "123456789012.dkr.ecr.us-east-1.amazonaws.com/golang-app:latest", "ImageConfiguration": { "Port": "8080", "RuntimeEnvironmentVariables": [ { "NAME": "Jane" } ] }, "ImageRepositoryType": "ECR" } }, "Status": "OPERATION_IN_PROGRESS", "InstanceConfiguration": { "CPU": "1 vCPU", "Memory": "3 GB" } } }
  • Per informazioni dettagliate sull’API, consulta CreateService in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare delete-auto-scaling-configuration.

AWS CLI

Esempio 1: eliminare l’ultima revisione attiva di una configurazione di dimensionamento automatico

Nell’esempio seguente, delete-auto-scaling-configuration elimina l’ultima revisione attiva di una configurazione di dimensionamento automatico di App Runner. Per eliminare l’ultima revisione attiva, specifica un nome della risorsa Amazon (ARN) che termini con il nome della configurazione, senza includere il componente della revisione.

Nell’esempio, prima di questa azione esistono due revisioni. Pertanto, viene eliminata la revisione 2 (l’ultima). Tuttavia, ora viene mostra "Latest": false, perché, dopo essere stata eliminata, non è più l’ultima revisione attiva.

aws apprunner delete-auto-scaling-configuration \ --cli-input-json file://input.json

Contenuto di input.json.

{ "AutoScalingConfigurationArn": "arn:aws:apprunner:us-east-1:123456789012:autoscalingconfiguration/high-availability" }

Output:

{ "AutoScalingConfiguration": { "AutoScalingConfigurationArn": "arn:aws:apprunner:us-east-1:123456789012:autoscalingconfiguration/high-availability/2/e76562f50d78042e819fead0f59672e6", "AutoScalingConfigurationName": "high-availability", "AutoScalingConfigurationRevision": 2, "CreatedAt": "2021-02-25T17:42:59Z", "DeletedAt": "2021-03-02T08:07:06Z", "Latest": false, "Status": "INACTIVE", "MaxConcurrency": 30, "MaxSize": 90, "MinSize": 5 } }

Esempio 2: eliminare una revisione specifica di una configurazione di ridimensionamento automatico

Nell’esempio seguente, delete-auto-scaling-configuration elimina una revisione specifica di una configurazione di dimensionamento automatico di App Runner. Per eliminare una revisione specifica, specifica un ARN che includa il numero della revisione.

Nell’esempio, prima di questa azione esistono diverse revisioni. L’azione elimina la revisione 1.

aws apprunner delete-auto-scaling-configuration \ --cli-input-json file://input.json

Contenuto di input.json.

{ "AutoScalingConfigurationArn": "arn:aws:apprunner:us-east-1:123456789012:autoscalingconfiguration/high-availability/1" }

Output:

{ "AutoScalingConfiguration": { "AutoScalingConfigurationArn": "arn:aws:apprunner:us-east-1:123456789012:autoscalingconfiguration/high-availability/1/2f50e7656d7819fead0f59672e68042e", "AutoScalingConfigurationName": "high-availability", "AutoScalingConfigurationRevision": 1, "CreatedAt": "2020-11-03T00:29:17Z", "DeletedAt": "2021-03-02T08:07:06Z", "Latest": false, "Status": "INACTIVE", "MaxConcurrency": 100, "MaxSize": 50, "MinSize": 5 } }

L’esempio di codice seguente mostra come utilizzare delete-connection.

AWS CLI

Come eliminare una connessione

Nell’esempio seguente, delete-connection elimina una connessione App Runner. Lo stato della connessione dopo una chiamata riuscita è DELETED. Questo perché la connessione non è più disponibile.

aws apprunner delete-connection \ --cli-input-json file://input.json

Contenuto di input.json.

{ "ConnectionArn": "arn:aws:apprunner:us-east-1:123456789012:connection/my-github-connection" }

Output:

{ "Connection": { "ConnectionArn": "arn:aws:apprunner:us-east-1:123456789012:connection/my-github-connection", "ConnectionName": "my-github-connection", "Status": "DELETED", "CreatedAt": "2020-11-03T00:32:51Z", "ProviderType": "GITHUB" } }
  • Per informazioni dettagliate sull’API, consulta DeleteConnection in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare delete-service.

AWS CLI

Come eliminare un servizio

L’esempio delete-service seguente elimina un servizio App Runner.

aws apprunner delete-service \ --cli-input-json file://input.json

Contenuto di input.json.

{ "ServiceArn": "arn:aws:apprunner:us-east-1:123456789012:service/python-app/8fe1e10304f84fd2b0df550fe98a71fa" }

Output:

{ "OperationId": "17fe9f55-7e91-4097-b243-fcabbb69a4cf", "Service": { "CreatedAt": "2020-11-20T19:05:25Z", "UpdatedAt": "2020-11-20T19:05:25Z", "ServiceArn": "arn:aws:apprunner:us-east-1:123456789012:service/python-app/8fe1e10304f84fd2b0df550fe98a71fa", "ServiceId": "8fe1e10304f84fd2b0df550fe98a71fa", "ServiceName": "python-app", "ServiceUrl": "psbqam834h.us-east-1.awsapprunner.com", "SourceConfiguration": { "AuthenticationConfiguration": { "ConnectionArn": "arn:aws:apprunner:us-east-1:123456789012:connection/my-github-connection/e7656250f67242d7819feade6800f59e" }, "AutoDeploymentsEnabled": true, "CodeRepository": { "CodeConfiguration": { "CodeConfigurationValues": { "BuildCommand": "pip install -r requirements.txt", "Port": "8080", "Runtime": "PYTHON_3", "RuntimeEnvironmentVariables": [ { "NAME": "Jane" } ], "StartCommand": "python server.py" }, "ConfigurationSource": "Api" }, "RepositoryUrl": "https://github.com/my-account/python-hello", "SourceCodeVersion": { "Type": "BRANCH", "Value": "main" } } }, "Status": "OPERATION_IN_PROGRESS", "InstanceConfiguration": { "CPU": "1 vCPU", "Memory": "3 GB" } } }
  • Per informazioni dettagliate sull’API, consulta DeleteService in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare describe-auto-scaling-configuration.

AWS CLI

Esempio 1: descrivere l’ultima revisione attiva di una configurazione di dimensionamento automatico

Nell’esempio seguente, describe-auto-scaling-configuration ottiene una descrizione dell’ultima revisione attiva di una configurazione di dimensionamento automatico di App Runner. Per descrivere l’ultima revisione attiva, specifica un ARN che termini con il nome della configurazione, senza includere il componente della revisione.

Nell’esempio, esistono due revisioni. Pertanto, viene descritta la revisione 2 (l’ultima). L’oggetto risultante mostra "Latest": true.

aws apprunner describe-auto-scaling-configuration \ --cli-input-json file://input.json

Contenuto di input.json.

{ "AutoScalingConfigurationArn": "arn:aws:apprunner:us-east-1:123456789012:autoscalingconfiguration/high-availability" }

Output:

{ "AutoScalingConfiguration": { "AutoScalingConfigurationArn": "arn:aws:apprunner:us-east-1:123456789012:autoscalingconfiguration/high-availability/2/e76562f50d78042e819fead0f59672e6", "AutoScalingConfigurationName": "high-availability", "AutoScalingConfigurationRevision": 2, "CreatedAt": "2021-02-25T17:42:59Z", "Latest": true, "Status": "ACTIVE", "MaxConcurrency": 30, "MaxSize": 90, "MinSize": 5 } }

Esempio 2: descrivere una revisione specifica di una configurazione di ridimensionamento automatico

Nell’esempio seguente, describe-auto-scaling-configuration ottiene una descrizione di una revisione specifica di una configurazione di dimensionamento automatico di App Runner. Per descrivere una revisione specifica, specifica un ARN che includa il numero della revisione.

Nell’esempio, esistono diverse revisioni e viene richiesta la revisione 1. L’oggetto risultante mostra "Latest": false.

aws apprunner describe-auto-scaling-configuration \ --cli-input-json file://input.json

Contenuto di input.json.

{ "AutoScalingConfigurationArn": "arn:aws:apprunner:us-east-1:123456789012:autoscalingconfiguration/high-availability/1" }

Output:

{ "AutoScalingConfiguration": { "AutoScalingConfigurationArn": "arn:aws:apprunner:us-east-1:123456789012:autoscalingconfiguration/high-availability/1/2f50e7656d7819fead0f59672e68042e", "AutoScalingConfigurationName": "high-availability", "AutoScalingConfigurationRevision": 1, "CreatedAt": "2020-11-03T00:29:17Z", "Latest": false, "Status": "ACTIVE", "MaxConcurrency": 100, "MaxSize": 50, "MinSize": 5 } }

L’esempio di codice seguente mostra come utilizzare describe-custom-domains.

AWS CLI

Come ottenere le descrizioni dei nomi di dominio personalizzati associati a un servizio

Nell’esempio seguente, describe-custom-domains ottiene le descrizioni e lo stato dei nomi di dominio personalizzati associati a un servizio App Runner.

aws apprunner describe-custom-domains \ --cli-input-json file://input.json

Contenuto di input.json.

{ "ServiceArn": "arn:aws:apprunner:us-east-1:123456789012:service/python-app/8fe1e10304f84fd2b0df550fe98a71fa", "DomainName": "example.com", "EnableWWWSubdomain": true }

Output:

{ "CustomDomains": [ { "CertificateValidationRecords": [ { "Name": "_70d3f50a94f7c72dc28784cf55db2f6b.example.com", "Status": "PENDING_VALIDATION", "Type": "CNAME", "Value": "_1270c137383c6307b6832db02504c4b0.bsgbmzkfwj.acm-validations.aws." }, { "Name": "_287870d3f50a94f7c72dc4cf55db2f6b.www.example.com", "Status": "PENDING_VALIDATION", "Type": "CNAME", "Value": "_832db01270c137383c6307b62504c4b0.mzkbsgbfwj.acm-validations.aws." } ], "DomainName": "example.com", "EnableWWWSubdomain": true, "Status": "PENDING_CERTIFICATE_DNS_VALIDATION" }, { "CertificateValidationRecords": [ { "Name": "_a94f784c70d3f507c72dc28f55db2f6b.deals.example.com", "Status": "SUCCESS", "Type": "CNAME", "Value": "_2db02504c1270c137383c6307b6834b0.bsgbmzkfwj.acm-validations.aws." } ], "DomainName": "deals.example.com", "EnableWWWSubdomain": false, "Status": "ACTIVE" } ], "DNSTarget": "psbqam834h.us-east-1.awsapprunner.com", "ServiceArn": "arn:aws:apprunner:us-east-1:123456789012:service/python-app/8fe1e10304f84fd2b0df550fe98a71fa" }

L’esempio di codice seguente mostra come utilizzare describe-service.

AWS CLI

Come descrivere un servizio

Nell’esempio seguente, describe-service ottiene una descrizione di un servizio App Runner.

aws apprunner describe-service \ --cli-input-json file://input.json

Contenuto di input.json.

{ "ServiceArn": "arn:aws:apprunner:us-east-1:123456789012:service/python-app/8fe1e10304f84fd2b0df550fe98a71fa" }

Output:

{ "Service": { "CreatedAt": "2020-11-20T19:05:25Z", "UpdatedAt": "2020-11-20T19:05:25Z", "ServiceArn": "arn:aws:apprunner:us-east-1:123456789012:service/python-app/8fe1e10304f84fd2b0df550fe98a71fa", "ServiceId": "8fe1e10304f84fd2b0df550fe98a71fa", "ServiceName": "python-app", "ServiceUrl": "psbqam834h.us-east-1.awsapprunner.com", "SourceConfiguration": { "AuthenticationConfiguration": { "ConnectionArn": "arn:aws:apprunner:us-east-1:123456789012:connection/my-github-connection/e7656250f67242d7819feade6800f59e" }, "AutoDeploymentsEnabled": true, "CodeRepository": { "CodeConfiguration": { "CodeConfigurationValues": { "BuildCommand": "pip install -r requirements.txt", "Port": "8080", "Runtime": "PYTHON_3", "RuntimeEnvironmentVariables": [ { "NAME": "Jane" } ], "StartCommand": "python server.py" }, "ConfigurationSource": "Api" }, "RepositoryUrl": "https://github.com/my-account/python-hello", "SourceCodeVersion": { "Type": "BRANCH", "Value": "main" } } }, "Status": "RUNNING", "InstanceConfiguration": { "CPU": "1 vCPU", "Memory": "3 GB" } } }
  • Per informazioni dettagliate sull’API, consulta DescribeService in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare disassociate-custom-domain.

AWS CLI

Come annullare l’associazione di un nome di dominio da un servizio

Nell’esempio seguente, disassociate-custom-domain annulla l’associazione tra il dominio example.com e un servizio App Runner. La chiamata annulla anche l’associazione del sottodominio www.example.com che era associato al dominio root.

aws apprunner disassociate-custom-domain \ --cli-input-json file://input.json

Contenuto di input.json.

{ "ServiceArn": "arn:aws:apprunner:us-east-1:123456789012:service/python-app/8fe1e10304f84fd2b0df550fe98a71fa", "DomainName": "example.com" }

Output:

{ "CustomDomain": { "CertificateValidationRecords": [ { "Name": "_70d3f50a94f7c72dc28784cf55db2f6b.example.com", "Status": "PENDING_VALIDATION", "Type": "CNAME", "Value": "_1270c137383c6307b6832db02504c4b0.bsgbmzkfwj.acm-validations.aws." }, { "Name": "_287870d3f50a94f7c72dc4cf55db2f6b.www.example.com", "Status": "PENDING_VALIDATION", "Type": "CNAME", "Value": "_832db01270c137383c6307b62504c4b0.mzkbsgbfwj.acm-validations.aws." } ], "DomainName": "example.com", "EnableWWWSubdomain": true, "Status": "DELETING" }, "DNSTarget": "psbqam834h.us-east-1.awsapprunner.com", "ServiceArn": "arn:aws:apprunner:us-east-1:123456789012:service/python-app/8fe1e10304f84fd2b0df550fe98a71fa" }

L’esempio di codice seguente mostra come utilizzare list-auto-scaling-configurations.

AWS CLI

Come ottenere un elenco impaginato delle configurazioni di dimensionamento automatico di App Runner

Nell’esempio seguente, list-auto-scaling-configurations elenca tutte le configurazioni di dimensionamento automatico di App Runner presenti nell’account AWS. In ogni risposta sono elencate fino a cinque configurazioni di dimensionamento automatico. AutoScalingConfigurationName e LatestOnly non sono specificati. I loro valori predefiniti fanno sì che venga elencata l’ultima revisione di tutte le configurazioni attive.

In questo esempio, la risposta include due risultati e, non essendocene altri, non viene restituito alcun NextToken.

aws apprunner list-auto-scaling-configurations \ --cli-input-json file://input.json

Contenuto di input.json.

{ "MaxResults": 5 }

Output:

{ "AutoScalingConfigurationSummaryList": [ { "AutoScalingConfigurationArn": "arn:aws:apprunner:us-east-1:123456789012:autoscalingconfiguration/high-availability/2/e76562f50d78042e819fead0f59672e6", "AutoScalingConfigurationName": "high-availability", "AutoScalingConfigurationRevision": 2 }, { "AutoScalingConfigurationArn": "arn:aws:apprunner:us-east-1:123456789012:autoscalingconfiguration/low-cost/1/50d7804e7656fead0f59672e62f2e819", "AutoScalingConfigurationName": "low-cost", "AutoScalingConfigurationRevision": 1 } ] }

L’esempio di codice seguente mostra come utilizzare list-connections.

AWS CLI

Esempio 1: elencare tutte le connessioni

Nell’esempio seguente, list-connections elenca tutte le connessioni App Runner nell’account AWS.

aws apprunner list-connections

Output:

{ "ConnectionSummaryList": [ { "ConnectionArn": "arn:aws:apprunner:us-east-1:123456789012:connection/my-github-connection", "ConnectionName": "my-github-connection", "Status": "AVAILABLE", "CreatedAt": "2020-11-03T00:32:51Z", "ProviderType": "GITHUB" }, { "ConnectionArn": "arn:aws:apprunner:us-east-1:123456789012:connection/my-github-org-connection", "ConnectionName": "my-github-org-connection", "Status": "AVAILABLE", "CreatedAt": "2020-11-03T02:54:17Z", "ProviderType": "GITHUB" } ] }

Esempio 2: elencare una connessione in base al nome

Nell’esempio seguente, list-connections elenca una connessione in base al relativo nome.

aws apprunner list-connections \ --cli-input-json file://input.json

Contenuto di input.json.

{ "ConnectionName": "my-github-org-connection" }

Output:

{ "ConnectionSummaryList": [ { "ConnectionArn": "arn:aws:apprunner:us-east-1:123456789012:connection/my-github-org-connection", "ConnectionName": "my-github-org-connection", "Status": "AVAILABLE", "CreatedAt": "2020-11-03T02:54:17Z", "ProviderType": "GITHUB" } ] }
  • Per informazioni dettagliate sull’API, consulta ListConnections in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare list-operations.

AWS CLI

Come elencare le operazioni eseguite su un servizio

Nell’esempio seguente, list-operations elenca tutte le operazioni eseguite finora su un servizio App Runner. In questo esempio, il servizio è nuovo ed è stata eseguita solo una singola operazione di tipo CREATE_SERVICE.

aws apprunner list-operations \ --cli-input-json file://input.json

Contenuto di input.json.

{ "ServiceArn": "arn:aws:apprunner:us-east-1:123456789012:service/python-app/8fe1e10304f84fd2b0df550fe98a71fa" }

Output:

{ "OperationSummaryList": [ { "EndedAt": 1606156217, "Id": "17fe9f55-7e91-4097-b243-fcabbb69a4cf", "StartedAt": 1606156014, "Status": "SUCCEEDED", "TargetArn": "arn:aws:apprunner:us-east-1:123456789012:service/python-app/8fe1e10304f84fd2b0df550fe98a71fa", "Type": "CREATE_SERVICE", "UpdatedAt": 1606156217 } ] }
  • Per informazioni dettagliate sull’API, consulta ListOperations in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare list-services.

AWS CLI

Come ottenere un elenco impaginato dei servizi App Runner

Nell’esempio seguente, list-services elenca tutti i servizi App Runner presenti nell’account AWS. In ogni risposta sono elencati fino a due servizi. In questo esempio viene mostrata la prima richiesta. La risposta include due risultati e un token che può essere utilizzato nella richiesta successiva. Quando una risposta successiva non include un token, significa che tutti i servizi sono stati elencati.

aws apprunner list-services \ --cli-input-json file://input.json

Contenuto di input.json.

{ "MaxResults": 2 }

Output:

{ "NextToken": "eyJDdXN0b21lckFjY291bnRJZCI6IjI3MDIwNTQwMjg0NSIsIlNlcnZpY2VTdGF0dXNDb2RlIjoiUFJPVklTSU9OSU5HIiwiSGFzaEtleSI6IjI3MDIwNTQwMjg0NSNhYjhmOTRjZmUyOWE0NjBmYjg3NjBhZmQyZWU4NzU1NSJ9", "ServiceSummaryList": [ { "CreatedAt": "2020-11-20T19:05:25Z", "UpdatedAt": "2020-11-23T12:41:37Z", "ServiceArn": "arn:aws:apprunner:us-east-1:123456789012:service/python-app/8fe1e10304f84fd2b0df550fe98a71fa", "ServiceId": "8fe1e10304f84fd2b0df550fe98a71fa", "ServiceName": "python-app", "ServiceUrl": "psbqam834h.us-east-1.awsapprunner.com", "Status": "RUNNING" }, { "CreatedAt": "2020-11-06T23:15:30Z", "UpdatedAt": "2020-11-23T13:21:22Z", "ServiceArn": "arn:aws:apprunner:us-east-1:123456789012:service/golang-container-app/ab8f94cfe29a460fb8760afd2ee87555", "ServiceId": "ab8f94cfe29a460fb8760afd2ee87555", "ServiceName": "golang-container-app", "ServiceUrl": "e2m8rrrx33.us-east-1.awsapprunner.com", "Status": "RUNNING" } ] }
  • Per informazioni dettagliate sull’API, consulta ListServices in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare list-tags-for-resource.

AWS CLI

Come elencare tag associati a un servizio App Runner

Nell’esempio seguente, list-tags-for-resource elenca tutti i tag associati a un servizio App Runner.

aws apprunner list-tags-for-resource \ --cli-input-json file://input.json

Contenuto di input.json.

{ "ResourceArn": "arn:aws:apprunner:us-east-1:123456789012:service/python-app/8fe1e10304f84fd2b0df550fe98a71fa" }

Output:

{ "Tags": [ { "Key": "Department", "Value": "Retail" }, { "Key": "CustomerId", "Value": "56439872357912" } ] }
  • Per informazioni dettagliate sull’API, consulta ListTagsForResource in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare pause-service.

AWS CLI

Come sospendere un servizio

Nell’esempio seguente, pause-service sospende un servizio App Runner.

aws apprunner pause-service \ --cli-input-json file://input.json

Contenuto di input.json.

{ "ServiceArn": "arn:aws:apprunner:us-east-1:123456789012:service/python-app/8fe1e10304f84fd2b0df550fe98a71fa" }

Output:

{ "OperationId": "17fe9f55-7e91-4097-b243-fcabbb69a4cf", "Service": { "CreatedAt": "2020-11-20T19:05:25Z", "UpdatedAt": "2020-11-23T12:41:37Z", "ServiceArn": "arn:aws:apprunner:us-east-1:123456789012:service/python-app/8fe1e10304f84fd2b0df550fe98a71fa", "ServiceId": "8fe1e10304f84fd2b0df550fe98a71fa", "ServiceName": "python-app", "ServiceUrl": "psbqam834h.us-east-1.awsapprunner.com", "SourceConfiguration": { "AuthenticationConfiguration": { "ConnectionArn": "arn:aws:apprunner:us-east-1:123456789012:connection/my-github-connection/e7656250f67242d7819feade6800f59e" }, "AutoDeploymentsEnabled": true, "CodeRepository": { "CodeConfiguration": { "CodeConfigurationValues": { "BuildCommand": "pip install -r requirements.txt", "Port": "8080", "Runtime": "PYTHON_3", "RuntimeEnvironmentVariables": [ { "NAME": "Jane" } ], "StartCommand": "python server.py" }, "ConfigurationSource": "Api" }, "RepositoryUrl": "https://github.com/my-account/python-hello", "SourceCodeVersion": { "Type": "BRANCH", "Value": "main" } } }, "Status": "OPERATION_IN_PROGRESS", "InstanceConfiguration": { "CPU": "1 vCPU", "Memory": "3 GB" } } }
  • Per informazioni dettagliate sull’API, consulta PauseService in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare resume-service.

AWS CLI

Come riprendere un servizio

Nell’esempio seguente, resume-service riprende l’esecuzione di un servizio App Runner.

aws apprunner resume-service \ --cli-input-json file://input.json

Contenuto di input.json.

{ "ServiceArn": "arn:aws:apprunner:us-east-1:123456789012:service/python-app/8fe1e10304f84fd2b0df550fe98a71fa" }

Output:

{ "OperationId": "17fe9f55-7e91-4097-b243-fcabbb69a4cf", "Service": { "CreatedAt": "2020-11-20T19:05:25Z", "UpdatedAt": "2020-11-23T12:41:37Z", "ServiceArn": "arn:aws:apprunner:us-east-1:123456789012:service/python-app/8fe1e10304f84fd2b0df550fe98a71fa", "ServiceId": "8fe1e10304f84fd2b0df550fe98a71fa", "ServiceName": "python-app", "ServiceUrl": "psbqam834h.us-east-1.awsapprunner.com", "SourceConfiguration": { "AuthenticationConfiguration": { "ConnectionArn": "arn:aws:apprunner:us-east-1:123456789012:connection/my-github-connection/e7656250f67242d7819feade6800f59e" }, "AutoDeploymentsEnabled": true, "CodeRepository": { "CodeConfiguration": { "CodeConfigurationValues": { "BuildCommand": "pip install -r requirements.txt", "Port": "8080", "Runtime": "PYTHON_3", "RuntimeEnvironmentVariables": [ { "NAME": "Jane" } ], "StartCommand": "python server.py" }, "ConfigurationSource": "Api" }, "RepositoryUrl": "https://github.com/my-account/python-hello", "SourceCodeVersion": { "Type": "BRANCH", "Value": "main" } } }, "Status": "OPERATION_IN_PROGRESS", "InstanceConfiguration": { "CPU": "1 vCPU", "Memory": "3 GB" } } }
  • Per informazioni dettagliate sull’API, consulta ResumeService in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare start-deployment.

AWS CLI

Come avviare un’implementazione manuale

Nell’esempio seguente, start-deployment esegue un’implementazione manuale in un servizio App Runner.

aws apprunner start-deployment \ --cli-input-json file://input.json

Contenuto di input.json.

{ "ServiceArn": "arn:aws:apprunner:us-east-1:123456789012:service/python-app/8fe1e10304f84fd2b0df550fe98a71fa" }

Output:

{ "OperationId": "853a7d5b-fc9f-4730-831b-fd8037ab832a" }
  • Per informazioni dettagliate sull’API, consulta StartDeployment in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare tag-resource.

AWS CLI

Come aggiungere tag a un servizio App Runner

Nell’esempio seguente, tag-resource aggiunge due tag a un servizio App Runner.

aws apprunner tag-resource \ --cli-input-json file://input.json

Contenuto di input.json.

{ "ResourceArn": "arn:aws:apprunner:us-east-1:123456789012:service/python-app/8fe1e10304f84fd2b0df550fe98a71fa", "Tags": [ { "Key": "Department", "Value": "Retail" }, { "Key": "CustomerId", "Value": "56439872357912" } ] }

Questo comando non produce alcun output.

  • Per informazioni dettagliate sull’API, consulta TagResource in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare untag-resource.

AWS CLI

Come rimuovere tag da un servizio App Runner

Nell’esempio seguente, untag-resource rimuove due tag da un servizio App Runner.

aws apprunner untag-resource \ --cli-input-json file://input.json

Contenuto di input.json.

{ "ResourceArn": "arn:aws:apprunner:us-east-1:123456789012:service/python-app/8fe1e10304f84fd2b0df550fe98a71fa", "TagKeys": [ "Department", "CustomerId" ] }

Questo comando non produce alcun output.

  • Per informazioni dettagliate sull’API, consulta UntagResource in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare update-service.

AWS CLI

Come aggiornare la dimensione della memoria

Nell’esempio seguente, update-service aggiorna la dimensione della memoria delle istanze (unità di dimensionamento) di un servizio App Runner a 2.048 MiB.

Quando la chiamata ha esito positivo, App Runner avvia un processo di aggiornamento asincrono. La struttura Service restituita dalla chiamata riflette il nuovo valore di memoria applicato da questa chiamata.

aws apprunner update-service \ --cli-input-json file://input.json

Contenuto di input.json.

{ "ServiceArn": "arn:aws:apprunner:us-east-1:123456789012:service/python-app/8fe1e10304f84fd2b0df550fe98a71fa", "InstanceConfiguration": { "Memory": "4 GB" } }

Output:

{ "OperationId": "17fe9f55-7e91-4097-b243-fcabbb69a4cf", "Service": { "CreatedAt": "2020-11-20T19:05:25Z", "UpdatedAt": "2020-11-23T12:41:37Z", "ServiceArn": "arn:aws:apprunner:us-east-1:123456789012:service/python-app/8fe1e10304f84fd2b0df550fe98a71fa", "ServiceId": "8fe1e10304f84fd2b0df550fe98a71fa", "ServiceName": "python-app", "ServiceUrl": "psbqam834h.us-east-1.awsapprunner.com", "SourceConfiguration": { "AuthenticationConfiguration": { "ConnectionArn": "arn:aws:apprunner:us-east-1:123456789012:connection/my-github-connection/e7656250f67242d7819feade6800f59e" }, "AutoDeploymentsEnabled": true, "CodeRepository": { "CodeConfiguration": { "CodeConfigurationValues": { "BuildCommand": "pip install -r requirements.txt", "Port": "8080", "Runtime": "PYTHON_3", "RuntimeEnvironmentVariables": [ { "NAME": "Jane" } ], "StartCommand": "python server.py" }, "ConfigurationSource": "Api" }, "RepositoryUrl": "https://github.com/my-account/python-hello", "SourceCodeVersion": { "Type": "BRANCH", "Value": "main" } } }, "Status": "OPERATION_IN_PROGRESS", "InstanceConfiguration": { "CPU": "1 vCPU", "Memory": "4 GB" } } }
  • Per informazioni dettagliate sull’API, consulta UpdateService in AWS CLI Command Reference.