post-image

Docker expose là gì? Hướng dẫn exposing port docker container

Tổng quan

Docker expose là gì? Hướng dẫn exposing port docker container

docker run -p host_port:container_port images
Code language: CSS (css)

Docker expose là gì?

Docker expose là hành động chuyển hướng port của docker container sang port của host chứa container.

Mỗi container khi được tạo ra đều chạy trên một ip riêng (nó tương tự như một máy ảo riêng biệt).

Ví dụ khi mình tạo một container từ image tomcat và kiểm tra thấy nó chạy trên ip 172.17.0.2 vậy muốn truy cập trang web của tomcat thì mình sẽ truy cập thông qua địa chỉ 172.17.0.2:8080 chứ không thể truy cập qua địa chỉ localhost:8080

Docker expose là gì? Hướng dẫn exposing port docker container
Docker expose là gì? Hướng dẫn exposing port docker container
Docker expose là gì? Hướng dẫn exposing port docker container

Tuy nhiên, một host có thể chứa nhiều docker container. Khi truy cập người ta chỉ quan tâm nó ở trên host nào và truy cập thông qua ip của host đó. Do đó ta cần expose port của container sang port của host.

Hướng dẫn exposing port docker container

Để thực hiện expose port cho container. Khi run container ta thêm option -p host_port:container_port

Ví dụ mình expose port 8080 của container tomcat sang port 8080 của host. Sau đó mình có thể truy cập tomcat qua localhost:8080, và các host khác cũng có thể truy cập tomcat thông qua ip của host hiện tại.

docker run -p 8080:8080 tomcat
Code language: CSS (css)

Tương tự mình muốn truy cập port 8080 của container thông qua port 8081 của container thì chạy lệnh sau:

docker run -p 8081:8080 tomcat
Code language: CSS (css)
Hướng dẫn exposing port docker container

Nguồn: https://stackjava.com/docker/docker-expose-la-gi-huong-dan-exposing-port-docker-container.html

Tài liệu tham khảo:

https://docs.docker.com/engine/reference/run/

CODEGYM – HỆ THỐNG ĐÀO TẠO LẬP TRÌNH HIỆN ĐẠI: https://codegym.vn/

Leave a Reply

Your email address will not be published. Required fields are marked *