Configurazione del processo dell'applicazione con un Procfile - AWS Elastic Beanstalk

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à.

Configurazione del processo dell'applicazione con un Procfile

Per specificare i comandi personalizzati per iniziare un'applicazione Go, includere un file chiamato Procfile nella radice del bundle di origine.

Per informazioni dettagliate sulla scrittura e l'utilizzo di un Procfile, espandere la sezione Buildfile e Procfile in Estensione delle piattaforme Elastic Beanstalk Linux.

Esempio Procfile
web: bin/server queue_process: bin/queue_processor foo: bin/fooapp

È necessario chiamare l'applicazione web principale ed elencarla come primo comando nel file Procfile. Elastic Beanstalk espone l'applicazione web principale nell'URL radice dell'ambiente, ad esempio http://my-go-env.elasticbeanstalk.com.

Elastic Beanstalk esegue anche qualsiasi applicazione il cui nome non include il prefisso web_, ma queste applicazioni non sono disponibili al di fuori dell'istanza.

Elastic Beanstalk si aspetta che i processi del Procfile vengano eseguiti continuamente. Elastic Beanstalk monitora queste applicazioni e riavvia qualsiasi processo che viene terminato. Per i processi con esecuzione breve, utilizza un comando Buildfile.

Se l'ambiente Go di Elastic Beanstalk utilizza una versione della piattaforma AMI Amazon Linux (precedente ad Amazon Linux 2), leggi le informazioni aggiuntive presenti in questa sezione.

Note
  • Le informazioni contenute in questo argomento si applicano solo ai rami della piattaforma basati su Amazon Linux AMI (AL1). Le ramificazioni della piattaforma AL2023/AL2 non sono compatibili con le precedenti versioni della piattaforma AMI Amazon Linux (AL1) e richiedono diverse impostazioni di configurazione.

  • Il 18 luglio 2022 Elastic Beanstalk ha impostato lo stato di tutte le ramificazioni della piattaforma sull'AMI Amazon Linux (AL1) su retired (ritirato). Per ulteriori informazioni sulla migrazione a una ramificazione della piattaforma Amazon Linux 2023 attuale e completamente supportata, consulta Migrazione dell'applicazione Elastic Beanstalk Linux ad Amazon Linux 2023 o Amazon Linux 2.

Nota

Le informazioni contenute in questo argomento si applicano solo ai rami della piattaforma basati su Amazon Linux AMI (AL1). Le ramificazioni della piattaforma AL2023/AL2 non sono compatibili con le precedenti versioni della piattaforma AMI Amazon Linux (AL1) e richiedono diverse impostazioni di configurazione.

Elastic Beanstalk configura il proxy nginx per inoltrare le richieste all'applicazione sul numero di porta specificato nella proprietà di ambiente PORT per l'applicazione. La tua applicazione deve sempre essere in ascolto su tale porta. È possibile accedere a questa variabile all'interno dell'applicazione chiamando il metodo os.Getenv("PORT").

Elastic Beanstalk usa il numero di porta specificato nella proprietà di ambiente PORT per la porta per la prima applicazione nel Procfile, quindi incrementa di 100 il numero di porta per ogni applicazione successiva nel Procfile. Se la proprietà PORT dell'ambiente non è impostata, Elastic Beanstalk utilizza 5000 per la porta iniziale.

Nell'esempio precedente, la proprietà di ambiente PORT per l'applicazione web è 5000, l'applicazione queue_process è 5100 e l'applicazione foo è 5200.

È possibile specificare la porta iniziale impostando l'opzione PORT con lo spazio dei nomi aws:elasticbeanstalk:application:environment, come mostrato nel seguente esempio.

option_settings: - namespace: aws:elasticbeanstalk:application:environment option_name: PORT value: <first_port_number>

Per ulteriori informazioni sull'impostazione delle proprietà di ambiente per l'applicazione, consulta Impostazioni opzioni.