HomeOur Team
Ngrok cho người mới

Ngrok cho người mới

By Trịnh Hữu Hoàng
Published in Solutions
November 23, 2022
3 min read

Câu hỏi 1: Ngrok là gì mà nó lại thần thánh đến vậy?

Ngrok giúp localhost ra internet

Đơn giản vậy thôi đó. Đơn giản lại cực gì mạnh mẽ.

Ngrok là cách nhanh nhất để đưa app của bạn lên internet. Bạn có thể chạy những trang web đang chạy trên máy tính cá nhân của bạn nhưng mọi người đều có thể truy cập vào.

Không còn port forwarding, không còn dynamic DNS, không còn VPN. Những từ khoá mà bạn phải ít nhiều đọc qua để có thể đưa được ứng dụng của mình lên internet.

Câu hỏi 2: Khi nào cần sử dụng ngrok?

Có rất nhiều trường hợp mà bạn cần xuất ứng dụng chạy localhost lên internet. Mình sẽ liệt kê một số trường hợp mình thấy là phổ biến.

  • Bạn chạy demo một dự án cho khách hàng xem từ chính máy của bạn mà không cần triển khai lên serve. Bạn muốn test thử trang web của mình trên thiết bị di động. Sẽ thật bất tiện nếu cứ phải chạy localhost, rồi 2 thiết bị PC + mobile đều phải kết nối chung wifi, lại còn chỉ test được trên mạng nội bộ nữa chứ. Không sao, ngrok sẽ giúp bạn và rồi thay vì truy cập đến địa chỉ IP, bạn sẽ gửi đường link của ngrok cho khách hàng, họ có thể truy cập từ mọi nơi. Thật là tiện
  • Tạo webhook trên máy tính của bạn để phát triển phần mềm. Trường hợp này cần thiết khi mà các dịch vụ bên thứ 3 yêu cầu bạn phải có webhook trên một địa chỉ web có HTTPS chẳng hạn. Việc có được một địa chỉ HTTPS khá là tốn công sức, đặc biệt là những người không chuyên về server. Cho dù bạn có một server hỗ trợ HTTPS, thì việc deploy lại server với mỗi thay đổi nhỏ khi chạy thử là rất mất thời gian. Thay vào đó, nếu như dịch vụ bên thứ 3 gọi thẳng được vào webhook trên máy local của bạn thì việc test, debug diễn ra liền mạch hơn rất nhiều.

Với kinh nghiệm của mình thì vậy thôi nhỉ.

Dĩ nhiên là ngrok còn có nhiều ứng dụng sử dụng khác:

  • HTTP/ Web servers
  • Servers & file stores
  • Database & management consoles
  • Files, folders & file servers
  • LDAP & Directory servers
  • Development languages & frameworks
  • Application servers
  • Email servers
  • Containers & Hypervisors

Công việc đưa phần mềm lên môi trường production là khó. Con đường di chuyển từ môi trường dev lên môi trường product, tư duy của bạn về mục tiêu đơn giản “khiến cho code chạy được” dần dần chuyển thành mục tiêu lớn hơn “khiến cho code đang chạy đấy quản lý được”.

Câu hỏi 3: Ngrok hoạt động như thế nào?

Khi được cài đặt trên máy tính, Ngrok (Agent) sẽ kết nối với máy chủ (your local service) theo tunnel riêng (Ngrok tunnels) đồng thời cung cấp cho bạn một subdomain / địa chỉ url của ngrok (từ ngrok edge) kèm theo port để kết nối ra ngoài

Nếu bạn mở địa chỉ này trong trình duyệt web, thì lưu lượng truy cập sẽ được chuyển hướng đến dịch vụ mạng trên máy tính của bạn.

Mình sẽ giữ ở mức đơn giản này, không đi sâu hơn vào cách hoạt động của ngrok. Như trong ảnh phần Ngrok edge, còn có

  • authentication: bảo mật ứng dụng ở ngrok edge
  • observability: Log các hoạt động
  • resiliency: loadbalancing

Câu hỏi 4: Cài đặt ngrok như nào?

  1. Tạo tài khoản Truy cập vào trang chủ Ngrok Download Tạo một tài khoản ngrok để bắt đầu Signupngrok-2.png
  2. Tải ngrok Bấm Download for Windows tải file zip chứa file ngrok.exe Mở file để bắt đầu ngrok-3.png
  3. Kết nối tài khoản Truy cập đường dẫn lấy authtokenngrok-4.png
ngrok config add-authtoken <your_token>
  1. Bắt đầu
ngrok http 3000

Kết luận

Vậy là chúng ta đã tìm hiểu được ngrok, tại sao cần dùng nó, biết sơ qua nó hoạt động ra sao, và cuối cùng là cách cài đặt và chạy. Ở phần này mình sẽ dừng lại ở đây. Phần sau mình sẽ viết tiếp ví dụ ứng dụng thực thế mình áp dụng khi dùng ngrok.


Tags

BeginnersNgrok

Share

Trịnh Hữu Hoàng

.NET Developer

Expertise

C#
ReactJs
PHP
Python

Social Media

fb

Related Posts

Custom Marker và Info Window trong GoogleMap Flutter - Tập cuối
Solutions
Custom Marker và Info Window trong GoogleMap Flutter - Tập cuối
December 21, 2022
2 min
© 2023, All Rights Reserved.
Powered By

Quick Links

HomeOur Team

Social Media