Sử dụng docker, bạn có thể tạo hình ảnh dựa trên các hình ảnh khác rất độc đáo. Ví dụ, bạn có thể tạo một hình ảnh Java-jdk7 (dựa trên Ubuntu LTS mới nhất), và dựa trên đó tạo ra các hình ảnh tìm kiếm đàn hồi và tomcat7 (cả hai đều cần java).Cách quản lý phụ thuộc hình ảnh docker (bảo trì)
Vì vậy, nếu tôi không tag hình ảnh của tôi, tôi kết thúc với những điều sau đây (trích docker images
):
╔══════════════════════╦════════╦══════════════╗
║ REPOSITORY ║ TAG ║ ID ║
╠══════════════════════╬════════╬══════════════╣
║ ubuntu ║ 12.04 ║ 8dbd9e392a96 ║
║ quintenk/jdk7-oracle ║ latest ║ 8928245086f4 ║
║ quintenk/tomcat7 ║ latest ║ 995cdb2cbfa8 ║
║ quintenk/elastics ║ latest ║ 123abc456ef2 ║
╚══════════════════════╩════════╩══════════════╝
Bây giờ cho câu hỏi này. Làm thế nào để/tôi nên duy trì sự phụ thuộc này? Làm cách nào để tôi thực hiện duy trì hình ảnh 1 và hình ảnh phụ thuộc?
- Nếu tôi cập nhật hình ảnh jdk (ví dụ:
apt-get upgrade
), tôi cho rằng tôi không làm hỏng hình ảnh phụ thuộc? Tuy nhiên, tôi cũng giả định rằng cây phụ thuộc không giống như bạn mong đợi nữa. [UPDATE: Tôi đã sao chép câu trả lời này, vì vậy hãy xem câu trả lời của riêng tôi bên dưới] - Nếu 1 là chính xác, có cách nào để tôi có thể tự gắn cờ hình ảnh phụ thuộc là lỗi thời và hy vọng họ có tự xây dựng lại không?
Hoặc là cách để gắn thẻ các vùng chứa với số phiên bản và tự xây dựng lại và phân phối lại tất cả các phụ thuộc với thẻ số phiên bản tăng lên? Điều đó có nghĩa là Dockerfiles sẽ cần phải được thay đổi để cập nhật.
CẬP NHẬT: Tôi đã tìm thấy hình ảnh sau trên trang web docker trong số presentation. Tuy nhiên, tôi không hoàn toàn chắc chắn về các bước làm thế nào để làm điều này (đặc biệt là với phụ thuộc vào hình ảnh khác như tôi đã mô tả).
http://docs.docker.com/docker-hub/builds/#repository-links giải pháp bạn muốn không? Nó tái xây dựng tất cả các hình ảnh tùy thuộc nếu thay đổi được thực hiện tại hình ảnh cơ sở của chúng. –
@WeiChing thực sự - đó sẽ là câu trả lời mới. Tất nhiên - đây là một điều xấu mà không cần thử nghiệm tự động – qkrijger