2015-06-18 8 views
13

Sto riscontrando problemi nell'implementazione della distribuzione della piattaforma mobile elastica per leggere il file .ebextensions/setup.config.Dove mettere la configurazione di ebextensions in AWS Elastic Beanstalk Docker distribuire con il bundle di sorgenti dock?

La documentazione per eb environment configuration dice:

È possibile includere uno o più file di configurazione con il vostro pacchetto di origine. I file di configurazione devono essere denominati con l'estensione .config (ad esempio, myapp.config) e inseriti in una directory di primo livello .ebext nel pacchetto di origine.

Tuttavia sembra che per Docker che il pacchetto di origine non è un file .zip o .war, ma un file .json, per esempio, la documentazione dire a create a Dockerrun.aws.json file -e sembra che sia il pacchetto di origine?

Nel creare una versione del app che caricare un file personalizzato Dockerrun-$VERSION.aws.json a S3 e la corsa simile al seguente (dove $APP è il file JSON dockerrun di versione):

aws elasticbeanstalk create-application-version \ 
    --application-name $APP_NAME \ 
    --version-label $VERSION \ 
    --source-bundle S3Bucket=$S3_BUCKET,S3Key=$S3_PATH/$APP 

Allora ... come è il. La directory di ebextensions si trova nella directory di primo livello del bundle di origine quando il "bundle" è solo un file JSON che finisce per creare un container? (Il mio primo tentativo era di inserirlo nella radice del progetto, ma non funzionava.)

risposta

17

Se si utilizza un file .json per i file di distribuzione di docker, non è possibile utilizzare .ebextensions.

Puoi comunque creare un file zip contenente il tuo .json e la tua directory .ebextension e tutto dovrebbe funzionare. Usa lo zip come artefatto di schieramento invece del json grezzo.

+1

Cool, ha funzionato bene, ho finito per indicare un file zip come pacchetto sorgente e conteneva solo un file 'Dockerrun.aws.json' e la directory' .ebextensions' con qualunque file di configurazione volessi. – MrColes

+0

Ho problemi a caricare il mio config.json, con le mie chiavi, sul server senza aggiungerlo a git. Considero che evita esplicitamente questi e devo farlo? –

+0

@MarkLester Prendo il tuo usando il cli. Puoi comprimere tutto o aggiungere un file .ebignore e ignorare tutto ciò che non desideri distribuire. Ebignore sovrascrive gitignore, quindi non devi commettere cose –