Friday, September 11, 2026
Explore Technology
Connect knowledge - Elevate skills
Linux 2 min read

[Docker] Bài 4 – Docker quản lý port

admin Th9 30, 2021 0 comments
[Docker] Bài 4 – Docker quản lý port

Docker containers chạy các dịch vụ bên trong nó trên các cổng được chỉ định cụ thể. Để truy cập dịch vụ của một container đang chạy trên một port, bạn cần liên kết container port với port trên Docker host (máy thật).

[maxbutton id=”2″ text=”1. Hiểu và thao tác port trên container” ]

Ví dụ như hình trên ta có thể thấy 1 vài điểm:

Container APACHE đang chạy port trong là port 80 nó sẽ map với 1 port bên ngoài là port 25980.

Bây giờ, bạn cần truy cập vào website đang chạy Apache container trên port 80. Chúng ta sẽ liên kết docker port 25980 tới container port 80. Bạn cũng có thể dùng port 80 trên docker port.

Đễ có được điều trên thì khi chạy docker run cần thêm thông số port vào nguyên tắc thứ tự từ port ngoài vào port trong.

Host port ngoài là 25980, container port trong là port 80.

docker run -it -p 25980:80 apache_image
docker run -it -p 25981:80 apache_image
docker run -it -p 389:389 ldap_image
docker run -it -p 3306:3306 mysql_image
docker run -it -p 3307:3306 mysql_immage

[maxbutton id=”2″ text=”2. Hiển thị tất cả các map port” ]

Ví dụ 1: Show tất cả các port đang chạy trên container

//Lệnh cần dùng đễ show tất cả các port được map trong container
docker ps -a

Ví dụ 2: Trong trường hợp docker có quá nhiều container ta muốn check cụ thể port của 1 vài container cụ thể có thê dùng các cách sau :

  • Check port theo Container ID
  • Check port theo NAMES (là hostname khi dùng docker run chạy)

Có thể check các thông số sau bằng lệnh ví dụ 1:

//Check theo container ID
[root@gitlab ~]# docker port c4f8c77af54e
80/tcp -> 0.0.0.0:3001
80/tcp -> :::3001

//Check theo NAMES container
[root@gitlab ~]# docker port c-httpd
443/tcp -> 0.0.0.0:443
443/tcp -> :::443
80/tcp -> 0.0.0.0:9999
80/tcp -> :::9999

Ví dụ 3: Check port đang được public ra ngoài của 1 container

[root@gitlab ~]# docker port c4f8c77af54e  3001/tcp
Error: No public port '3001/tcp' published for c4f8c77af54e
[root@gitlab ~]# docker port c4f8c77af54e  80/tcp
0.0.0.0:3001
:::3001

 

 

admin

Technical author & IT enthusiast at systemzone.top.

Latest Tech Posts

Fresh updates from systemzone.top
All Posts
0 0 đánh giá
Đánh giá bài viết
Theo dõi
Thông báo của
guest
0 Góp ý
Cũ nhất
Mới nhất Được bỏ phiếu nhiều nhất

Fast Updates

Latest & breaking tech news

Quality Content

Verified & carefully curated

Community

Learn, share and grow together

Always Connected

Empowering developers & tech enthusiasts

0
Rất thích suy nghĩ của bạn, hãy bình luận.x