0
0
Lập trình
Flame Kris
Flame Krisbacodekiller

Hướng Dẫn Cài Đặt Portainer Để Quản Lý Docker Host Hiệu Quả

Đăng vào 3 ngày trước

• 3 phút đọc

Chủ đề:

TechMely

Hướng Dẫn Cài Đặt Portainer Để Quản Lý Docker Host

Portainer là một công cụ quản lý Docker Container miễn phí, với kích thước gọn nhẹ và giao diện trực quan dễ sử dụng. Công cụ này cho phép người dùng dễ dàng quản lý Docker host một cách hiệu quả và dễ dàng.

1. Hướng Dẫn Cài Đặt Portainer

Để bắt đầu, bạn cần tạo một Docker Volume để lưu trữ thông tin của Portainer:

bash Copy
docker volume create portainer_data

Tiếp theo, chạy Container từ image Portainer:

bash Copy
docker run -d -p 8000:8000 -p 9000:9000 --name=portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce

Sử dụng lệnh docker ps để kiểm tra các container đang chạy. Bạn sẽ thấy container Portainer đã khởi động thành công.

2. Truy Cập Portainer

Bạn có thể truy cập vào trang quản trị Portainer qua địa chỉ sau:

Copy
http://[IP_Address]:9000

Trong lần truy cập đầu tiên, Portainer sẽ yêu cầu bạn thiết lập mật khẩu cho tài khoản admin. Sau khi đã tạo thành công tài khoản, bạn sẽ thấy giao diện quản trị của Portainer.

3. Hướng Dẫn Thêm Docker Host

Cách 1: Sử Dụng Portainer Agent

  1. Chạy Container từ image Portainer Agent:
    bash Copy

docker run -d -p 9001:9001 --name portainer_agent --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v /var/lib/docker/volumes:/var/lib/docker/volumes portainer/agent:latest

Copy
2. **Truy cập vào Portainer và thêm môi trường:**
   - Chọn mục **Environment** -> **Add Environment**.
   - Ở tab Agent, điền tên, IP và Port của Portainer Agent, sau đó chọn **Connect**.

### Cách 2: Expose Docker API
1. **Chỉnh sửa cấu hình Docker trên remote host:**
   ```bash
   nano /lib/systemd/system/docker.service

Thêm vào ExecStart trường -H=tcp://0.0.0.0:2375 để xuất hiện Docker API ra ngoài.

  1. Khởi động lại docker daemon:

    bash Copy
    systemctl daemon-reload
    sudo service docker restart
  2. Quay lại Portainer và thêm môi trường:

    • Chọn mục Environment -> Add Environment.
    • Ở tab API, nhập thông tin IP và Port, sau đó chọn Connect.

Lưu ý: Trong quá trình triển khai, hãy đảm bảo quy hoạch port và mở firewall từ server cài đặt Portainer đến các remote host.

4. Thông Tin Remote Host Đã Kết Nối

Bạn có thể xem thông tin của từng host đã kết nối bằng cách vào menu Home ở bên trái. Trang sẽ hiển thị danh sách các host đã kết nối. Nhấn chọn host bạn muốn quản lý để truy cập trang thông tin của host đó.

Giờ đây, bạn có thể dễ dàng quản lý các container của mình mà không cần phải sử dụng command line.

5. Truy Cập Portainer Qua Domain

Để truy cập Portainer qua domain, bạn cần thực hiện các bước sau:

Bước 1: Cấu Hình NGINX

Tạo file portainer.conf trong nginx:

Copy
server {
    listen 80;
    listen 443 ssl; // default_server;
    server_name portainer.local.vn;

    if ($scheme = http) {
        return 301 https://$server_name$request_uri;
    }

    client_max_body_size 10G;
    ssl_certificate /etc/ssl/local.vn/local.cer;
    ssl_certificate_key /etc/ssl/local.vn/local.key;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;

    access_log /opt/logs/nginx/monitorq.log;
    error_log /opt/logs/nginx/monitor_error.log;

    location / {
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_pass http://[ip_portainer]:9000;
        proxy_read_timeout 1800;
        proxy_connect_timeout 180;
        proxy_send_timeout 180;
        send_timeout 180;

        # WebSocket support
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
    }
}

Bước 2: Reload Cấu Hình NGINX

Cuối cùng, bạn cần reload lại cấu hình NGINX để áp dụng thay đổi.

Lưu ý: Nếu gặp sự cố khi truy cập console vào container từ remote host qua NGINX, hãy đảm bảo thêm cấu hình WebSocket trong file NGINX để hỗ trợ tính năng này.

6. Tổng Kết

Portainer là một công cụ hữu ích cho việc quản lý Docker host, đặc biệt cho các dự án nhỏ không cần quá nhiều dịch vụ hay container. Tuy nhiên, với những dự án lớn, bạn nên xem xét việc cài đặt Portainer để có thể quản lý dễ dàng và hiệu quả hơn.
source: viblo

Gợi ý câu hỏi phỏng vấn
Không có dữ liệu

Không có dữ liệu

Bài viết được đề xuất
Bài viết cùng tác giả

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào