Tôi có một ứng dụng Dockerfile
/elastic-beanstalk
trong một repo git
mà kéo một tarball của phiên bản hiện tại của ứng dụng từ s3
và khởi chạy nó. Điều này làm việc tuyệt vời lần đầu tiên tôi triển khai; các Docker container được xây dựng, và các ứng dụng khởi chạy và chạy một cách chính xác. Sự cố xảy ra sau khi tôi thực hiện thay đổi đối với ứng dụng, tải lại tarball lên s3
và chạy eb deploy
.đàn hồi-cây đậu ứng dụng Docker không cập nhật khi triển khai
$ eb deploy
INFO: Environment update is starting.
INFO: Deploying new version to instance(s).
INFO: Successfully built aws_beanstalk/staging-app
INFO: Successfully pulled yadayada/blahblah:latest
INFO: Docker container 06608fa37b2c is running aws_beanstalk/current-app.
INFO: New application version was deployed to running EC2 instances.
INFO: Environment update completed successfully.
Nhưng ứng dụng chưa được cập nhật trên *.elasticbeanstalk.com
. Tôi đoán vì Dockerfile
không thay đổi, docker không xây dựng lại vùng chứa (và kéo tarball ứng dụng mới nhất). Tôi muốn có thể bắt buộc xây dựng lại nhưng công cụ eb
dường như không có tùy chọn đó. Tôi có thể buộc xây dựng lại từ bảng điều khiển trang web, nhưng rõ ràng là không tốt cho tự động hóa. Tôi cam kết mỗi thay đổi cho git
và tôi hy vọng rằng eb
sẽ sử dụng điều đó để biết rằng việc xây dựng lại là cần thiết nhưng điều đó dường như không tạo ra bất kỳ sự khác biệt nào. Tôi có sử dụng docker/bean-beanstalk không đúng cách không? Lý tưởng nhất là tôi muốn cam kết git
và có beanstalk tự động cài đặt lại ứng dụng.
Dường như cây đậu không hỗ trợ dữ liệu người dùng - ít nhất theo [this] (http://stackoverflow.com/questions/8412231/how-do-i-pass-userdata-to-a-beanstalk -instance-with-cloudformation) và [this] (https://forums.aws.amazon.com/thread.jspa?threadID=81687). –