Ho un'applicazione node.js impacchettata in un'immagine docker ospitata in un repository pubblico.L'aggiornamento automatico dell'immagine della finestra mobile AWS Beanstalk non funziona
Ho implementato correttamente quell'immagine in un'applicazione docker AWS Beanstalk. Il problema è che mi aspettavo che l'applicazione Beanstalk venisse aggiornata automaticamente quando aggiorno l'immagine nel repository pubblico, come suggerito dalla seguente configurazione.
Dockerrun.aws.json:
{
"AWSEBDockerrunVersion": "1",
"Image": {
"Name": "peveuve/dynamio-payment-service",
"Update": "true"
},
"Ports": [
{
"ContainerPort": "8000"
}
],
"Logging": "/var/log/dynamio"
}
Il Dockerfile è molto semplice:
FROM node:4.2.1-onbuild
# Environment variables
ENV NODE_ENV test
ENV PORT 8000
# expose application port outside
EXPOSE $PORT
La documentazione Amazon è abbastanza chiaro su questo:
includono Facoltativamente la chiave di aggiornamento . Il valore predefinito è "true" e ordina a Elastic Beanstalk di controllare il repository, di inserire eventuali aggiornamenti nell'immagine e di sovrascrivere qualsiasi immagine memorizzata nella cache.
Ma devo aggiornare manualmente l'applicazione Beanstalk caricando una nuova versione del descrittore Dockerrun.aws.json. Ho dimenticato qualcosa? Dovrebbe funzionare così?
Penso che si sono fondamentalmente giusta. Non sono sicuro che sia sufficiente un riavvio, è necessaria una ricostruzione. Questo è quello che dovevo fare, e un altro ragazzo ha detto la stessa cosa nel suo blog. Upate il vostro anser se siete d'accordo e lo accetterò. – peveuve
buona presa! Ho aggiornato la risposta Aggiornamento –
: in realtà, non ricostruire la tua app, ci vuole molto tempo. Molto meglio caricare lo stesso Dockerrun.aws.json e aumentare il numero di versione. – peveuve