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à.
Migrazione a Elastic Beanstalk Docker in esecuzione su Amazon Linux 2 da Docker multi-container in esecuzione su Amazon Linux
Prima del rilascio del ramo di piattaforma ECS in esecuzione su Amazon Linux 2 (a 64 bit), Elastic Beanstalk ha offerto un percorso di migrazione alternativo ad Amazon Linux 2 per i clienti con ambienti basati sul ramo della piattaforma Docker multi-container in esecuzione su Amazon Linux (a 64 bit). In questo argomento viene descritto il percorso di migrazione e rimane in questo documento come riferimento per tutti i clienti che hanno completato tale percorso di migrazione.
Raccomandiamo ai clienti con ambienti basati sul ramo della piattaforma Docker multi-container in esecuzione su Amazon Linux (a 64 bit)di migrare al ramo della piattaforma ECS in esecuzione su Amazon Linux 2 (a 64 bit). A differenza del percorso di migrazione alternativo, questo approccio continua a utilizzare Amazon ECS per coordinare le distribuzioni di container negli ambienti Docker gestiti da ECS. Questo aspetto consente un approccio più semplice. Non sono richieste modifiche al codice sorgente e lo stesso Dockerrun.aws.json
v2 è supportato. Per ulteriori informazioni, consulta Migrazione dell'applicazione Elastic Beanstalk da Docker multi-container gestito da ECS a ECS su Amazon Linux 2023 AL1 .
Puoi migrare le applicazioni in esecuzione sulla piattaforma Docker multicontainer su AMI Amazon Linux alla piattaforma Docker su Amazon Linux 2. La piattaforma Docker multicontainer su AMI Amazon Linux richiede di specificare immagini dell'applicazione precompilate da eseguire come container. Dopo la migrazione, non si avrà più questa limitazione, perché la piattaforma Docker su Amazon Linux 2 consente a Elastic Beanstalk di creare le immagini del container anche durante la distribuzione. Le applicazioni continueranno a essere eseguite in ambienti Multicontainer con i vantaggi aggiuntivi dello strumento Docker Compose.
Docker Compose è uno strumento per la definizione e l'esecuzione di applicazioni Docker multi-container. Per ulteriori informazioni su Docker Compose e su come installarlo, vedere la sezione Panoramica dei siti Docker Compose
Il file docker-compose.yml
Lo strumento Docker Compose utilizza il file docker-compose.yml
per la configurazione dei servizi applicativi. Questo file sostituisce il file Dockerrun.aws.json v2
nella directory del progetto dell'applicazione e nel bundle di origine dell'applicazione. Il file docker-compose.yml
viene creato manualmente e sarà utile fare riferimento al file Dockerrun.aws.json v2
per la maggior parte dei valori dei parametri.
Di seguito è riportato un esempio di un file docker-compose.yml
e il file Dockerrun.aws.json v2
corrispondente per la stessa applicazione. Per ulteriori informazioni sul file docker-compose.yml
, consulta le informazioni di rifermento sul file ComposeDockerrun.aws.json v2
, consulta Dockerrun.aws.json v2.
docker-compose.yml |
Dockerrun.aws.json v2 |
||
---|---|---|---|
|
|
Ulteriori considerazioni sulla migrazione
La piattaforma Docker Amazon Linux 2 e la piattaforma AMI Docker Amazon Linux multicontainer implementano le proprietà dell'ambiente in modo diverso. Queste due piattaforme hanno anche directory di registro diverse che Elastic Beanstalk crea per ciascuno dei rispettivi container. Dopo la migrazione dalla piattaforma AMI Docker Amazon Linux multicontainer, sarà necessario essere consapevoli di queste diverse implementazioni per il nuovo ambiente della piattaforma Docker Amazon Linux 2.
Area | Piattaforma Docker su Amazon Linux 2 con Docker Compose | Piattaforma Docker multi-container su AMI Amazon Linux |
---|---|---|
Proprietà dell'ambiente |
Affinché i container possano accedere alle proprietà dell'ambiente, è necessario aggiungere un riferimento al file |
Elastic Beanstalk può passare direttamente le proprietà di ambiente al container. Il codice in esecuzione nel container può accedere a queste proprietà come variabili di ambiente senza alcuna configurazione aggiuntiva. |
Directory di log |
Per ogni container, Elastic Beanstalk crea una directory di log chiamata |
Per ogni container, Elastic Beanstalk crea una directory di log chiamata |
Fasi della migrazione
Per eseguire la migrazione alla piattaforma Docker su Amazon Linux 2
-
Creare il file
docker-compose.yml
per l'applicazione, in base al fileDockerrun.aws.json v2
esistente. Per ulteriori informazioni, consulta la sezione di cui sopr Il file docker-compose.yml. -
Nella directory principale della cartella del progetto dell'applicazione, sostituire il file
Dockerrun.aws.json v2
con il filedocker-compose.yml
appena creato.La struttura della directory dovrebbe essere la seguente.
~/myApplication |-- docker-compose.yml |-- .ebextensions |-- php-app |-- proxy
-
Utilizzare il comando eb init per configurare la directory locale per la distribuzione in Elastic Beanstalk.
~/myApplication$
eb init -p docker
application-name
-
Utilizzare il eb create comando per creare un ambiente e distribuire l'immagine Docker.
~/myApplication$
eb create
environment-name
-
Se l'app è un'applicazione Web, dopo l'avvio dell'ambiente, utilizzare il comando eb open per visualizzarla in un browser Web.
~/myApplication$
eb open
environment-name
-
È possibile visualizzare lo stato dell'ambiente appena creato utilizzando il comando eb status.
~/myApplication$
eb status
environment-name