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à.
Passaggio 3: Carica il tuo «hello, world!» applicazione per Amazon S3
Ora preparerai e caricherai i tuoi contenuti di origine in una posizione da cui CodeDeploy distribuirli. Le seguenti istruzioni mostrano come effettuare il provisioning di un bucket Amazon S3, preparare i file di revisione dell'applicazione per il bucket, raggruppare i file della revisione e quindi inserire la revisione nel bucket.
Nota
Sebbene non sia trattato in questo tutorial, puoi CodeDeploy utilizzarlo per distribuire applicazioni dai repository alle istanze. GitHub Per ulteriori informazioni, consulta Integrazione con CodeDeploy GitHub.
Argomenti
Esegui il provisioning di un bucket Amazon S3
Crea un contenitore o un bucket di storage in Amazon S3 o usa un bucket esistente. Assicurati di poter caricare la revisione nel bucket e che le EC2 istanze Amazon utilizzate nelle distribuzioni possano scaricare la revisione dal bucket.
Puoi usare la AWS CLI console Amazon S3 o Amazon S3 per creare un APIs bucket Amazon S3. Dopo aver creato il bucket, assicurati di concedere le autorizzazioni di accesso al bucket e al tuo utente. CodeDeploy
Nota
I nomi dei bucket devono essere univoci in Amazon S3 per AWS tutti gli account. Se non si è in grado di utilizzare amzn-s3-demo-bucket
, provare un altro nome del bucket, ad esempio amzn-s3-demo-bucket
seguito da un trattino e le iniziali o altri identificatori univoci. Assicurarsi quindi di sostituire il nome del bucket per amzn-s3-demo-bucket
ovunque sia presente in questo tutorial.
Il bucket Amazon S3 deve essere creato nella stessa AWS regione in cui vengono lanciate le EC2 istanze Amazon di destinazione. Ad esempio, se crei il bucket nella regione Stati Uniti orientali (Virginia settentrionale), EC2 le istanze Amazon di destinazione devono essere avviate nella regione Stati Uniti orientali (Virginia settentrionale).
Argomenti
Per creare un bucket Amazon S3 () CLI
Chiama il mb comando per creare un bucket Amazon S3 denominato: amzn-s3-demo-bucket
aws s3 mb s3://amzn-s3-demo-bucket --region
region
Per creare un bucket Amazon S3 (console)
-
Apri la console Amazon S3 all'indirizzo. https://console.aws.amazon.com/s3/
-
Nella console Amazon S3, scegli Crea bucket.
-
Nella casella Nome bucket, digitare un nome per il bucket.
-
Nell'elenco Regione selezionare la regione di destinazione, quindi selezionare Crea.
Concedi le autorizzazioni al bucket Amazon S3 e al tuo account AWS
È necessario disporre delle autorizzazioni per il caricamento nel bucket Amazon S3. Puoi specificare queste autorizzazioni tramite una policy sui bucket di Amazon S3. Ad esempio, nella seguente policy sui bucket di Amazon S3, l'utilizzo del carattere wildcard (*) consente 111122223333
all' AWS account di caricare file in qualsiasi directory del bucket Amazon S3 denominata: amzn-s3-demo-bucket
{ "Statement": [ { "Action": [ "s3:PutObject" ], "Effect": "Allow", "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/*", "Principal": { "AWS": [ "111122223333" ] } } ] }
Per visualizzare l'ID del tuo AWS account, consulta Finding Your account ID. AWS
Ora è il momento giusto per verificare che il bucket Amazon S3 consenta le richieste di download da ogni istanza Amazon partecipante. EC2 Puoi specificarlo tramite una policy sui bucket di Amazon S3. Ad esempio, nella seguente policy sui bucket di Amazon S3, l'utilizzo del carattere wildcard (*) consente a qualsiasi EC2 istanza Amazon con un profilo di istanza allegato IAM contenente il ARN arn:aws:iam::444455556666:role/CodeDeployDemo
download di file da qualsiasi directory del bucket Amazon S3 denominata: amzn-s3-demo-bucket
{ "Statement": [ { "Action": [ "s3:Get*", "s3:List*" ], "Effect": "Allow", "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/*", "Principal": { "AWS": [ "arn:aws:iam::444455556666:role/CodeDeployDemo" ] } } ] }
Per informazioni su come generare e allegare una bucket policy di Amazon S3, consulta Esempi di policy Bucket.
L'utente CodeDeploy amministrativo in cui hai creato Fase 1: Configurazione deve inoltre disporre dell'autorizzazione per caricare la revisione nel bucket Amazon S3. Un modo per specificarlo è tramite una IAM policy, che aggiungi al set di autorizzazioni dell'utente o a un IAM ruolo (che consenti all'utente di assumere). La seguente IAM politica consente all'utente di caricare le revisioni in qualsiasi punto del bucket Amazon S3 denominato: amzn-s3-demo-bucket
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":["s3:PutObject"], "Resource":"arn:aws:s3:::amzn-s3-demo-bucket/*" } ] }
Per informazioni su come creare una IAM policy, consulta Creating IAM policies nella User Guide. IAM Per informazioni sull'aggiunta di una politica a un set di autorizzazioni, consulta Creare un set di autorizzazioni nella Guida per l'AWS IAM Identity Center utente.
Prepara i file dell'applicazione per il bucket
Assicurati che la pagina web, il AppSpec file e lo script siano organizzati sulla tua macchina di sviluppo in questo modo:
c:\ |-- temp\ |--HelloWorldApp\ |-- appspec.yml |-- before-install.bat |-- index.html
Raggruppa i file dell'applicazione in un unico file di archivio e invia il file di archivio
Raggruppare i file presenti in un file di archivio (noti come revisione dell'applicazione).
Nota
Potrebbero essere addebitati dei costi per lo storage degli oggetti in un bucket e per il trasferimento delle revisioni dell'applicazione dentro e fuori un bucket. Per ulteriori informazioni, consulta i Prezzi di Amazon S3
-
Sul computer di sviluppo, passare alla cartella in cui sono archiviati i file:
cd c:\temp\HelloWorldApp
Nota
Se non si passa a questa cartella, il raggruppamento dei file verrà avviato nella cartella corrente. Ad esempio, se la cartella corrente è
c:\temp
invece dic:\temp\HelloWorldApp
, il raggruppamento verrà avviato con i file e le sottocartelle presenti nella cartellac:\temp
, che può includere più di una sottocartellaHelloWorldApp
. -
Chiamate il create-application comando per registrare una nuova applicazione denominata
HelloWorld_App
con CodeDeploy:aws deploy create-application --application-name HelloWorld_App
-
Richiama il comando CodeDeploy push per raggruppare i file, caricare le revisioni su Amazon S3 e registrare le informazioni CodeDeploy sulla revisione caricata, il tutto in un'unica operazione.
aws deploy push --application-name HelloWorld_App --s3-location s3://amzn-s3-demo-bucket/HelloWorld_App.zip --ignore-hidden-files
Questo comando raggruppa i file dalla directory corrente (esclusi i file nascosti) in un unico file di archivio denominato
HelloWorld_App.zip
, carica la revisione nelamzn-s3-demo-bucket
bucket e registra le informazioni sulla revisione caricata. CodeDeploy