2016-12-18 22 views
9

Tôi đang sử dụng Docker Quickstart Terminal để chạy vùng chứa docker. Container nên làm việc trên cổng 8088 của localhost:Quá trình lưu trữ cục bộ của Docker không hoạt động trên Windows

docker run -it --name myContainer -p 8088:8088 

Tuy nhiên, khi tôi đi đến localhost:8088 hoặc 127.0.0.1:8088 tôi không thể tìm thấy bất kỳ quá trình chạy.

Tính năng này hoạt động trên OSX.

Tại sao tính năng này không hoạt động trên Windows?

+0

Câu hỏi của bạn là về localhost: nếu bạn muốn localhost hoạt động, bạn cần chuyển tiếp cổng như tôi đã đề cập. Nếu không, một ip docker máy sẽ cho bạn thấy IP thực tế VM. – VonC

Trả lời

12

Tôi giả sử bạn đang sử dụng VirtualBox, vì đó là những gì được tích hợp với thiết bị đầu cuối Quickstart.

Lý do nó không hoạt động là Windows không chạy các thùng chứa (Linux) của bạn một cách tự nhiên, nó chạy chúng trong một máy ảo dựa trên Linux riêng biệt. VM này được phát hành theo một địa chỉ IP khác nhau hơn so với máy tính của bạn "vật lý", thường được in khi bạn khởi động thiết bị đầu cuối quickstart:

enter image description here

Đây là địa chỉ ip bạn cần phải sử dụng để kết nối với chứa được xuất bản cổng.

3

Một khả năng là loại máy ảo bạn đang sử dụng: HyperV (Docker For Windows) hoặc VirtualBox (Docker Toolbox).

Nếu sau này (có vẻ như có thể xảy ra vì bạn đang sử dụng Trạm khởi động nhanh Docker), bạn cần chuyển tiếp 8088 để máy tính của bạn (máy chủ cục bộ) xem nó.
Xem "How do I configure docker compose to expose ports correctly?" làm ví dụ khi sử dụng VirtualBox.

Nếu máy chủ cục bộ không hoạt động, docker-machine ip sẽ hiển thị cho bạn ip của máy ảo đang được thực thi.

Các vấn đề liên quan