Tôi muốn tự động triển khai ứng dụng của mình bằng cách khởi chạy dịch vụ ECS bằng hình ảnh Docker mới nhất. Từ những gì tôi đã đọc, cách triển khai phiên bản hình ảnh mới như sau:Dịch vụ ECS - Tự động triển khai với hình ảnh Docker mới
- Tạo bản sửa đổi công việc mới (sau khi cập nhật hình ảnh trên kho lưu trữ Docker).
- Cập nhật dịch vụ và chỉ định bản sửa đổi mới.
Điều này có vẻ hiệu quả nhưng tôi muốn thực hiện điều này thông qua CLI để tôi có thể viết kịch bản. # 2 có vẻ dễ dàng để thực hiện thông qua AWS CLI với update-service
, nhưng tôi không thấy cách làm # 1 mà không chỉ định toàn bộ Task JSON một lần nữa như với register-task-definition
(JSON của tôi sẽ bao gồm thông tin đăng nhập trong các biến môi trường, vì vậy tôi muốn có điều đó ở càng ít địa điểm càng tốt).
Đây có phải là cách tôi nên tự động hóa triển khai bản cập nhật Dịch vụ ECS của mình không? Và nếu có, liệu có một cách "tốt" để Định nghĩa tác vụ khởi chạy bản sửa đổi mới (tức là không sao chép mọi thứ)?
Bí quyết này là 'description-task-definition' sẽ chứa định nghĩa công việc ban đầu của bạn với _containerDefinitions_ làm khóa. Tôi đã thành công với việc sửa đổi điều này rồi chạy 'register-task-definition' để đăng ký một định nghĩa mới. Nếu bạn lo lắng về ENV, giải pháp dễ nhất là sử dụng một trong các SDK không bash. –