+1

[Docker] HomeLab triển khai Reverse Proxy server sử dụng Zoraxy

Chào các bạn,

Hôm nay mình quay trở lại với một bài viết về Docker. Hi vọng giúp ích cho ai đó lang thang vào đọc bài viết này. Chủ đề mình muốn chia sẻ với các bạn trong bài viết này là tự triển khai Reverse Proxy server sử dụng Zoraxy với HomeLab tự có và không tốn chi phí. Nó bình dân là phờ ri 😄😄

Bắt đầu thôi !!!

1. Công cụ cần có

  • Máy ảo
  • Server
  • VPS
  • Cài Linux Ubuntu, Debian, CentOS...

Bạn nào chưa biết các khái niệm này thì hỏi chị Google hoặc anh chatGPT nhé!

2 Vào việc chính

Sau khi đã có các công cụ ở phần đầu mục 1.

Các bạn tiến hành cài DockerDocker Compose. Phần cài mình để link tại đây.

Sau khi hoàn thành việc cài đặt DockerDocker Compose. Chúng ta sẽ đi cài ứng dụng Zoraxy để làm Reverse Proxy

Zoraxy là gì? Các bạn đọc thêm tài liệu tại đây

Một vài tính năng chính của Zoraxy mình liệt kêt ở đây:

  • Reverse Proxy (HTTP/2)

  • Redirection Rules

  • TLS / SSL setup and deploy

  • Blacklist / Whitelist by country or IP address (single IP, CIDR or wildcard for beginners)

  • Integrated Up-time Monitor

Để cài đặt Zoraxy các bạn tạo một file docker-compose như bên dưới

version: '3.3'
services:
  zoraxy-docker:
    image: zoraxydocker/zoraxy:latest
    container_name: zoraxy
    ports:
      - 80:80
      - 443:443
      - 8005:8000/tcp
    volumes:
      - /home/docker/Containers/Zoraxy:/opt/zoraxy/config/
    environment:
      ARGS: '-noauth=false'

Lưu lại và thoát

Tiếp đến chạy lệnh docker-compose up -d để khởi tạo image.png

Đợi ít phút khởi tạo xong các bạn login và khởi tạo user để đăng nhập. Mở trình duyệt lên và nhập image.png

image.png

Đây là giao diện tổng quan của Zoraxy.

Cấu hình Reverse Proxy. Mình ví dụ ở đây mình khai báo cho ứng dụng tên uptime-kuma thì các bạn khai báo như bên dưới. Ở đây có 2 thông số chính là DomainIP target.

image.png

  • Domain là tên miền bạn khai báo cho ứng dụng khi người dùng truy cập vào
  • IP target là IP và port backend bên trong server ứng dụng đang chạy

Khai báo xong các bạn qua tab HTTP proxy sẽ thấy domain xuất hiện ở đây image.png

Để Host chạy được HTTP bạn cấu hình lại cho Zoraxy chạy port 443 thay vì chạy port 80 default. Trong tab status i các bạn kéo xuống bên dưới và đổi Port 80 -> 443 là xong. Hình minh hoạ mình chưa đổi nhé 😃 image.png

Tiếp theo các bạn tạo cho domain ứng dụng tên uptime-kuma một cái SSL. Các bạn qua tab TLS/ SSL certificates image.png

Mở cái ACME Tool lên

image.png

Nhập email và domain của ứng dụng và bấm Get certificate image.png

Nếu muốn auto renew cert thì enable lên.

Sau đó qua lại tab HTTP Proxy thấy ổ khoá từ vàng -> xanh. Vậy là ngon lành rồi. Truy cập vào domain ứng dụng coi xem sao và mở xem chứng chỉ cert.

image.png

Vậy là xong rồi đó

Toàn bộ quá trình thực hiện các bạn có thể xem video mình hướng dẫn bên dưới

Follow các kênh mình chia sẻ

Vibo chia sẻ

Youtube

Blog chia sẻ


All Rights Reserved

Viblo
Let's register a Viblo Account to get more interesting posts.