Docker - Cấu hình NGINX

Xin chào các bạn tương lai của Docker! Hôm nay, chúng ta sẽ bắt đầu một hành trình thú vị vào thế giới của Docker và NGINX. Là giáo viên khoa học máy tính hàng xóm thân thiện của bạn, tôi rất vui mừng được hướng dẫn bạn trong chuyến phiêu lưu này. Đừng lo lắng nếu bạn là người mới bắt đầu lập trình - chúng ta sẽ bắt đầu từ cơ bản và dần dần nâng cao. Vậy, hãy lấy một tách cà phê (hoặc trà, nếu đó là sở thích của bạn), và chúng ta cùng bắt đầu nào!

Docker - Setting NGINX

Docker là gì?

Trước khi chúng ta nhảy vào chi tiết việc thiết lập NGINX với Docker, hãy dành một chút thời gian để hiểu Docker là gì. Hãy tưởng tượng bạn đang chuyển đến một ngôi nhà mới. Thay vì đóng gói tất cả tài sản của bạn vào các hộp khác nhau và hy vọng chúng sẽ phù hợp với ngôi nhà mới, Docker cho phép bạn đóng gói toàn bộ căn phòng của bạn - nội thất, trang trí và tất cả - vào một container di động duy nhất. Đó chính là điều Docker làm cho phần mềm!

Docker là một nền tảng cho phép bạn đóng gói ứng dụng và tất cả các phụ thuộc của nó vào một đơn vị chuẩn hóa gọi là container. Những container này có thể chạy nhất quán trên bất kỳ hệ thống nào, không quan trọng hạ tầng cơ sở là gì. Đúng là rất tuyệt phải không?

NGINX là gì?

Bây giờ, hãy nói về NGINX (phát âm là "engine-x"). NGINX giống như một cảnh sát giao thông siêu hiệu quả cho các ứng dụng web của bạn. Nó là một máy chủ web phổ biến có thể cũng hoạt động như một proxy ngược, bộ phân tải và bộ nhớ cache HTTP. Nói đơn giản hơn, nó giúp quản lý và điều hướng lưu lượng internet để đảm bảo các ứng dụng web của bạn chạy mượt mà và hiệu quả.

Thiết lập NGINX với Docker

Được rồi, bây giờ chúng ta đã có những giới thiệu cơ bản, hãy cởi bỏ áo khoác và bắt đầu với một chút mã thực tế!

Bước 1: Cài đặt Docker

Đầu tiên, chúng ta cần cài đặt Docker trên hệ thống của mình. Quá trình cài đặt thay đổi tùy thuộc vào hệ điều hành của bạn, nhưng bạn có thể tìm thấy hướng dẫn chi tiết trên trang web chính thức của Docker. Sau khi cài đặt xong Docker, mở terminal hoặc command prompt, và hãy kiểm tra cài đặt:

docker --version

Nếu bạn thấy số phiên bản, chúc mừng! Bạn đã cài đặt Docker thành công.

Bước 2: Tải hình ảnh Docker NGINX

Bây giờ, hãy lấy hình ảnh NGINX chính thức từ Docker Hub. Hãy tưởng tượng Docker Hub như một thư viện khổng lồ của các hình ảnh container đã được xây dựng trước. Chúng ta sẽ sử dụng lệnh sau:

docker pull nginx

Lệnh này cho Docker biết tải xuống hình ảnh NGINX mới nhất. Điều này giống như đi đến thư viện và mượn một cuốn sách về NGINX!

Bước 3: Chạy NGINX trong một container Docker

Bây giờ đến phần thú vị - chạy NGINX trong một container Docker. Chúng ta sẽ sử dụng lệnh sau:

docker run --name my-nginx -p 80:80 -d nginx

Hãy phân tích này:

  • docker run: Điều này cho Docker biết chạy một container
  • --name my-nginx: Chúng ta đang đặt tên cho container của mình
  • -p 80:80: Điều này ánh xạ cổng 80 của container đến cổng 80 trên máy chủ của chúng ta
  • -d: Điều này chạy container ở chế độ tách biệt (trong nền)
  • nginx: Điều này xác định hình ảnh chúng ta muốn sử dụng

Sau khi chạy lệnh này, bạn nên có thể mở trình duyệt web và truy cập http://localhost để thấy trang chào mừng mặc định của NGINX. Điều này có phải là rất tuyệt không? Bạn vừa thiết lập một máy chủ web chỉ với một lệnh!

Bước 4: Tùy chỉnh cấu hình NGINX

Bây giờ, giả sử bạn muốn tùy chỉnh cấu hình NGINX của mình. Chúng ta có thể làm điều này bằng cách tạo một Dockerfile. Tạo một tệp mới có tên Dockerfile (không có phần mở rộng) và thêm nội dung sau:

FROM nginx
COPY nginx.conf /etc/nginx/nginx.conf

Dockerfile này làm hai điều:

  1. Nó bắt đầu với hình ảnh NGINX chính thức
  2. Nó sao chép tệp nginx.conf của chúng ta vào container

Bây giờ, tạo một tệp có tên nginx.conf trong cùng thư mục với cấu hình NGINX mong muốn của bạn. Dưới đây là một ví dụ đơn giản:

events {
worker_connections 1024;
}

http {
server {
listen 80;
server_name localhost;

location / {
root /usr/share/nginx/html;
index index.html index.htm;
}
}
}

Bước 5: Xây dựng và chạy container NGINX tùy chỉnh của chúng ta

Bây giờ chúng ta có Dockerfile và cấu hình tùy chỉnh, hãy xây dựng hình ảnh của chúng ta:

docker build -t my-custom-nginx .

Và cuối cùng, hãy chạy container NGINX tùy chỉnh của chúng ta:

docker run --name my-custom-nginx -p 80:80 -d my-custom-nginx

Voila! Bây giờ bạn đã có một máy chủ NGINX tùy chỉnh chạy trong một container Docker.

Các lệnh Docker hữu ích

Dưới đây là bảng các lệnh Docker có thể bạn sẽ thấy hữu ích:

Lệnh Mô tả
docker ps Liệt kê các container đang chạy
docker ps -a Liệt kê tất cả các container (bao gồm cả những container đã dừng)
docker stop <container_id> Dừng một container đang chạy
docker start <container_id> Khởi động một container đã dừng
docker rm <container_id> Xóa một container
docker images Liệt kê tất cả các hình ảnh
docker rmi <image_id> Xóa một hình ảnh
docker logs <container_id> Xem日志 của container

Kết luận

Và thế là bạn đã có nó, các bạn! Chúng ta đã đi từ việc hiểu cơ bản về Docker và NGINX đến việc thiết lập và tùy chỉnh máy chủ NGINX của riêng mình trong một container Docker. Nhớ rằng, thực hành là cách tốt nhất để học, vì vậy đừng ngần ngại thử nghiệm và thử các cấu hình khác nhau.

Trong những năm dạy học của mình, tôi đã thấy rằng cách tốt nhất để học là làm. Vì vậy, tôi khuyến khích bạn chơi với những gì chúng ta đã học hôm nay. Thử thay đổi cấu hình NGINX, hoặc có thể thiết lập nhiều container chạy các dịch vụ khác nhau. Các khả năng là không giới hạn!

Khi kết thúc, tôi nhớ lại một học sinh曾经说过, "Docker trông như phép thuật ban đầu, nhưng bây giờ tôi thấy nó chỉ là một kỹ thuật thông minh." Tôi hy vọng rằng hướng dẫn này đã giúp bạn hiểu rõ hơn về Docker và NGINX.

Đến gặp lại lần sau, chúc các bạn vui vẻ với Docker!

Credits: Image by storyset