Modifica un progetto per utilizzare un contenitore personalizzato - AWS SimSpace Weaver

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Modifica un progetto per utilizzare un contenitore personalizzato

Queste istruzioni presuppongono che tu sappia già come usarle AWS SimSpace Weaver e che desideri rendere Cloud AWS più efficienti i flussi di lavoro di archiviazione e sviluppo delle app.

Prerequisiti
  • Hai un contenitore personalizzato in Amazon Elastic Container Registry (Amazon ECR). Per ulteriori informazioni sulla creazione di un contenitore personalizzato, consultaCrea un contenitore personalizzato.

Per modificare il progetto in modo da utilizzare un contenitore personalizzato
  1. Aggiungi le autorizzazioni al ruolo dell'app di simulazione del tuo progetto per utilizzare Amazon ECR.

    1. Se non disponi già di una policy IAM con le seguenti autorizzazioni, crea la policy. Ti suggeriamo il nome simspaceweaver-ecr della policy. Per ulteriori informazioni su come creare una policy IAM, consulta Creazione di policy IAM nella Guida per l'AWS Identity and Access Management utente.

      { "Version": "2012-10-17", "Statement": [ { "Sid": "Statement", "Effect": "Allow", "Action": [ "ecr:BatchGetImage", "ecr:GetDownloadUrlForLayer", "ecr:GetAuthorizationToken" ], "Resource": "*" } ] }
    2. Trova il nome del ruolo dell'app di simulazione del tuo progetto:

      1. In un editor di testo, apri il AWS CloudFormation modello:

        sdk-folder\PackagingTools\sample-stack-template.yaml
      2. Trova la RoleName proprietà sottoWeaverAppRole. Il valore è il nome del ruolo dell'app di simulazione del progetto.

        AWSTemplateFormatVersion: "2010-09-09" Resources: WeaverAppRole: Type: 'AWS::IAM::Role' Properties: RoleName: 'weaver-MySimulation-app-role' AssumeRolePolicyDocument: Version: "2012-10-17" Statement: - Effect: Allow Principal: Service: - 'simspaceweaver.amazonaws.com'
    3. Allega la simspaceweaver-ecr policy al ruolo dell'app di simulazione del progetto. Per ulteriori informazioni su come allegare una policy, consulta Aggiungere e rimuovere le autorizzazioni di identità IAM nella Guida per l'AWS Identity and Access Management utente.

    4. Vai al seguente comando sdk-folder ed esegui il seguente comando per aggiornare lo SimSpace Weaver stack di esempio:

      python setup.py --cloudformation
  2. Specificate le immagini del contenitore nello schema di simulazione del progetto.

    • Puoi aggiungere la default_image proprietà opzionale in simulation_properties per specificare un'immagine contenitore personalizzata predefinita per tutti i domini.

    • Aggiungi la image proprietà nel campo app_config per il dominio in cui desideri utilizzare un'immagine contenitore personalizzata. Specificare l'URI del repository Amazon ECR come valore. Puoi specificare un'immagine diversa per ogni dominio.

      • Se image non è specificato per un dominio e default_image viene specificato, le app di quel dominio utilizzano l'immagine predefinita.

      • Se image non è specificato per un dominio e default_image non è specificato, le app di quel dominio vengono eseguite in un SimSpace Weaver contenitore standard.

    Esempio Frammento di schema che include impostazioni personalizzate del contenitore
    sdk_version: "1.17.0" simulation_properties: log_destination_service: "logs" log_destination_resource_name: "MySimulationLogs" default_entity_index_key_type: "Vector3<f32>" default_image: "111122223333.dkr.ecr.us-west-2.amazonaws.com/my-ecr-repository:latest" # image to use if no image specified for a domain domains: MyCustomDomain: launch_apps_via_start_app_call: {} app_config: package: "s3://weaver-myproject-111122223333-us-west-2/MyViewApp.zip" launch_command: ["MyViewApp"] required_resource_units: compute: 1 endpoint_config: ingress_ports: - 7000 image: "111122223333.dkr.ecr.us-west-2.amazonaws.com/my-ecr-repository:latest" # custom container image to use for this domain MySpatialDomain: launch_apps_by_partitioning_strategy: partitioning_strategy: "MyGridPartitioning" grid_partition: x: 2 y: 2 app_config: package: "s3://weaver-myproject-111122223333-us-west-2/MySpatialApp.zip" launch_command: ["MySpatialApp"] required_resource_units: compute: 1 image: "111122223333.dkr.ecr.us-west-2.amazonaws.com/my-ecr-repository:latest" # custom container image to use for this domain
  3. Crea e carica il tuo progetto come al solito.