Proxy ngược có ý nghĩa nếu bạn muốn làm cho các dịch vụ có thể truy cập từ bên ngoài hoặc nếu bạn muốn có một số máy chủ dưới cùng một cổng có thể truy cập từ bên ngoài. Một biến thể đơn giản và nhanh chóng là Nginx Proxy Manager (viết tắt là npm). Điều này được cài đặt trong Docker.
Tôi đã mô tả trong bài viết này cách cài đặt Docker và Portainer trên Proxmox. Điều này bây giờ là cơ sở cho việc cài đặt NPM. Đầu tiên, đăng nhập dưới dạng người dùng trên container docker của bạn và tạo thư mục npm như sau:
mkdir npm && cd npm
Chuyển vào thư mục npr và tạo tệp docker-compose.yml bằng nano như sau:
nano docker-compose.yml
Dán nội dung sau vào tệp này. Bạn có thể thay đổi mật khẩu SQL cho phù hợp. Nhưng sau đó thay đổi nó trong cả 2 dòng!
version: '3'
services:
app:
image: 'jc21/nginx-proxy-manager:latest'
restart: unless-stopped
ports:
- '80:80'
- '81:81'
- '443:443'
environment:
DB_MYSQL_HOST: "db"
DB_MYSQL_PORT: 3306
DB_MYSQL_USER: "npm"
DB_MYSQL_PASSWORD: "npm"
DB_MYSQL_NAME: "npm"
volumes:
- ./data:/data
- ./letsencrypt:/etc/letsencrypt
db:
image: 'jc21/mariadb-aria:latest'
restart: unless-stopped
environment:
MYSQL_ROOT_PASSWORD: 'npm'
MYSQL_DATABASE: 'npm'
MYSQL_USER: 'npm'
MYSQL_PASSWORD: 'npm'
volumes:
- ./data/mysql:/var/lib/mysql
Sau đó lưu tệp bằng CTR-X --> Y--> Enter và thoát nano.
Sau đó cài đặt NPM với lệnh sau:
docker-compose up -d
Sau Khi cài đặt hoàn tất, bạn có thể đăng nhập vào Portainer và kiểm tra xem các container có chạy đúng hay không.
Bạn cấu hình trình quản lý proxy khi bạn gọi giao diện web với cổng 81: http://ip-docker:81.
Đăng nhập người dùng với email mặc định là admin@example.com và mật khẩu là changeme
Sau khi đăng nhập thành công cần thay đổi các thông tin cần thiếtChúc mừng! Nginx Proxy Manager đã được cài đặt thành công !
docker run -d \--name=nginx-proxy-manager \-p 8181:8181 \-p 80:8080 \-p 443:4443 \-v /docker/appdata/nginx-proxy-manager:/config:rw \jlesage/nginx-proxy-manager
Các bước đăng nhập tương tự như trên (chú ý các Port thay đổi cho phù hợp)
0 Nhận xét