Có thể tôi đã bỏ sót một thứ gì đó, nhưng tôi đã tạo một hình ảnh docker cục bộ. Tôi có một nút 3 lên và chạy. Hai công nhân và một người quản lý. Tôi sử dụng nhãn như một ràng buộc. Khi tôi khởi chạy một dịch vụ cho một trong những công nhân thông qua ràng buộc, nó hoạt động hoàn hảo nếu hình ảnh đó được công khai.Docker: Các nút công nhân Swarm không tìm thấy hình ảnh được xây dựng cục bộ
Đó là, nếu tôi làm:
docker service create --name redis --network my-network --constraint node.labels.myconstraint==true redis:3.0.7-alpine
Sau đó, các dịch vụ redis được gửi đến một trong các nút công nhân và đầy đủ chức năng. Tương tự như vậy, nếu tôi chạy hình ảnh được xây dựng cục bộ của tôi KHÔNG CÓ ràng buộc, vì người quản lý của tôi cũng là một nhân viên, nó được lên kế hoạch cho người quản lý và chạy hoàn toàn tốt. Tuy nhiên, khi tôi thêm các hạn chế nó không thành công vào nút công nhân, từ docker service ps 2l30ib72y65h
tôi thấy:
... Shutdown Rejected 14 seconds ago "No such image: my-customized-image"
Có cách nào để làm cho người lao động được tiếp cận với những hình ảnh địa phương vào nút quản lý của bầy đàn? Nó có sử dụng một cổng cụ thể có thể không mở được không? Nếu không, tôi phải làm gì - chạy một kho lưu trữ cục bộ?
ngọt - cảm ơn bạn! Trước khi tôi chấp nhận như là câu trả lời mặc dù, (tôi không thích mâu thuẫn!), Có vẻ như không nhất quán rằng nút Manager KHÔNG nhìn thấy hình ảnh cục bộ (không phải từ docker chạy, nhưng từ docker service create) và các nút Worker không ? – JoeG
Từ góc độ người dùng, có thể. Nhưng từ quan điểm mã, mỗi máy chủ Docker là một môi trường riêng biệt. Khi bạn xây dựng, bạn đang tạo hình ảnh đó trên máy chủ, không phải trên bầy đàn. Logic trên 'dịch vụ tạo' là lần đầu tiên sử dụng những gì được lưu trữ trên máy chủ, và sau đó rơi trở lại để kéo hình ảnh đó từ sổ đăng ký. Mà xảy ra là một hành vi giống hệt với 'docker run'. – BMitch
Tôi có thể thiếu cái gì đó, nhưng nút công nhân trong bầy đàn đề cập đến sổ đăng ký/hình ảnh này như thế nào? Tôi đã thử đặt localhost: 5000/my/image vào tệp yml của tôi, nhưng các nút công nhân của tôi vẫn không thể tìm thấy hình ảnh. Có cách nào để thực hiện công việc này mà không phải đăng nhập vào các nút công nhân không? –