Điểm:0

Truy cập IP của máy chủ hoặc giao diện loopback từ bộ chứa Docker

lá cờ ng

willnorris/imageproxy là một máy chủ proxy hình ảnh lưu vào bộ nhớ đệm mà chúng tôi sử dụng trong một trong các triển khai của mình. Chúng tôi thường có một chương trình phụ trợ PHP sẽ phân phát một số html hoặc json cho khách hàng nơi sẽ có URL http://<imageproxy>/200/https://willnorris.com/logo.jpg. Sau đó, máy khách sẽ lấy hình ảnh đó từ proxy. Điều này là tốt.

Điều tôi không thể làm việc là thực hiện điều này trong quá trình phát triển cục bộ bằng Docker (Soạn thư). Vấn đề là, không giống như sản xuất, miền mà tôi muốn tìm nạp hình ảnh đang chạy trên máy chủ, thường chỉ hiển thị trên giao diện loopback (127.0.0.*). Tôi thường xác định một mục trong /etc/hosts thư mục giống như

127.0.0.2 web.myproj quản trị viên.myproj cdn.myproj

Và sau đó tôi truy cập web.myproj trên máy tính đó. Làm cách nào để bộ chứa Docker kết nối với địa chỉ localhost của máy chủ của nó (bất cứ thứ gì được gọi trong biệt ngữ Docker)? Tôi cho rằng tôi có thể sử dụng extra_hosts tính năng nào đó?

Nếu kết nối cụ thể với một địa chỉ loopback dành riêng/máy chủ cục bộ là không thể/được phép, có cách nào khác để truy cập ip của máy chủ lưu trữ không?


Chi tiết công nghệ

  • Máy chủ: Ubuntu 21.04 chạy bên trong Máy trạm VMWare trên Windows 10 Pro
Michael Hampton avatar
lá cờ cz
Docker này chạy trên WSL2 hay trên máy Linux thực tế?
lá cờ ng
Nó thường chạy trên macOS và Linux "thực" khi phát triển.
Michael Hampton avatar
lá cờ cz
Bạn có nghĩa là một máy ảo Linux?
lá cờ ng
Không, tôi chuyển đổi máy trạm :) Tại nơi làm việc, tôi có một máy tính Windows nơi tôi chạy Linux trong máy ảo (và WSL2, đối với vấn đề đó, nhưng không phải tất cả các ứng dụng đều hoạt động tốt như nhau) và ở nhà tôi chạy macOS.
Michael Hampton avatar
lá cờ cz
Đây là công nghệ, không phải ma thuật, và như vậy tôi không thể đọc được máy tính hay suy nghĩ của bạn. Tốt nhất là bạn nên trả lời những câu hỏi như vậy càng chi tiết càng tốt để những người đang cố gắng giúp đỡ bạn không bị bối rối vì thông tin liên quan bị thiếu, cũng như không mất thời gian không cần thiết để cố gắng yêu cầu làm rõ. Điều đó nói rằng, đây là những câu hỏi của tôi để làm rõ: Ý của bạn là bạn kết nối với máy ảo Linux tại nơi làm việc khi sử dụng macOS ở nhà? Thế còn WSL2 thì sao? Cái nào (hoặc cả hai) bạn đang thực sự sử dụng ở đây cho dự án này?
lá cờ ng
Chắc chắn, hoàn toàn hiểu điều đó. Tôi đã không cố gắng để xúc phạm bạn trong bất kỳ cách nào. Tôi sẽ đặt câu hỏi cho Linux. Chi tiết thêm bây giờ :)

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.