Vận Hành 8+ Ứng Dụng Next.js 15, PostgreSQL 17 & Redis Trên Một VPS Dokploy Duy Nhất (DokployHub)
Cách chế độ output: "standalone" ép mức ăn RAM mỗi container Next.js từ 640 MB xuống 165 MB — giúp gói KVM $5.99–$10.49/tháng gánh trọn dàn micro-SaaS.
DOKPLOYHUB · SỔ TAY DI TRÚ PAAS TƯƠNG TÁC
Trong mô hình định cỡ xác định của DokployHub, chúng tôi tổng hợp mức tiêu thụ RAM cgroup v2 của Dokploy (~650 MB), Coolify v4 (~1.35 GB), Kamal 2 (~400 MB) và SQLite WAL / PocketBase cùng đỉnh bộ nhớ biên dịch Nixpacks/Cargo (2.2–3.2 GB) để ngăn chặn triệt để lỗi tràn bộ nhớ Exit 137.
Chúng tôi đối chiếu trực tiếp cấu hình KVM NVMe khuyến nghị trên DokployHub với biểu phí công khai truy xuất ngày 2026-11-12 từ Hostinger, Vultr, UltaHost, InterServer và ChemiCloud, kèm danh mục kiểm tra 6 bước lưu trạng thái ngay trên trình duyệt của bạn.
Chọn bộ điều phối PaaS, loại ứng dụng (bao gồm Next.js 15, Go/Rust hoặc SQLite WAL / PocketBase) và kiến trúc biên dịch CI để DokployHub tính toán đỉnh RAM thực tế trước khi thuê máy chủ.
# 1. dokploy-bootstrap.sh — 4GB NVMe Build-Swap OOM Guard + Dokploy
fallocate -l 4096M /swapfile && chmod 600 /swapfile && mkswap /swapfile && swapon /swapfile
echo '/swapfile none swap sw 0 0' >> /etc/fstab
sysctl -w vm.swappiness=10 vm.vfs_cache_pressure=50
curl -sSL https://dokploy.com/install.sh | sh
# Prune dangling Nixpacks/BuildKit cache nightly at 03:30 UTC
echo '30 3 * * * root docker builder prune -af --filter "until=72h"' > /etc/cron.d/dokploy-prune
# 2. docker-compose.yml — Bounded Cgroup Limits (8x STK-NEXT15-PG, CI-INPLACE)
services:
web-app:
restart: unless-stopped
environment:
NODE_ENV: production
NODE_OPTIONS: "--max-old-space-size=2048"
deploy:
replicas: 1
update_config:
parallelism: 1
order: start-first
resources:
limits:
cpus: "1.67"
memory: 608M
reservations:
memory: 274M
networks:
- dokploy-network
# Automated S3 Backup Target: s3://dokploy-vault/pg-hourly (RPO 1h ZSTD, $6 InterServer 1TB)
Đánh dấu từng bước dưới đây khi bạn thực hiện chuyển đổi trên DokployHub; tiến độ được lưu riêng trong localStorage trên trình duyệt của bạn.
Ngăn nhân Linux OOM Killer (Exit 137) giết nhầm container PostgreSQL đang chạy khi trình biên dịch Nixpacks/Turbopack tăng vọt 2.6 GB bộ nhớ tạm.
fallocate -l 4G /swapfile && chmod 600 /swapfile && mkswap /swapfile && swapon /swapfile
sysctl -w vm.swappiness=10 vm.vfs_cache_pressure=50
Kiểm chứng: chạy free -h thấy dòng Swap: 4.0Gi và cat /proc/sys/vm/swappiness trả về 10.
Docker tự ghi luật DNAT vào chuỗi PREROUTING vượt qua UFW nếu bạn mở cổng 5432:5432. Chỉ mở cổng 22, 80, 443 trên máy chủ Dokploy.
ufw default deny incoming && ufw allow 22/tcp && ufw allow 80/tcp && ufw allow 443/tcp && ufw allow 443/udp && ufw --force enable
Kiểm chứng: chạy ss -tulpn đảm bảo cổng 5432 và 6379 KHÔNG lắng nghe trên 0.0.0.0.
Khởi tạo Dokploy + Traefik v3 + Docker Swarm nội bộ, sau đó gán tên miền quản trị HTTPS và đóng cổng 3000 thô trên tường lửa.
curl -sSL https://dokploy.com/install.sh | sh
# Sau khi gán tên miền HTTPS cho bảng điều khiển:
ufw deny 3000/tcp
Kiểm chứng: truy cập https://paas.ten-mien-cua-ban.com trả về chứng chỉ Let’s Encrypt hợp lệ.
Giảm 78% kích thước ảnh Next.js và khống chế trình biên dịch Node.js/Rust không vượt quá vùng RAM dự phòng trên VPS.
NODE_OPTIONS="--max-old-space-size=2048"
NIXPACKS_NODE_VERSION="22"
CARGO_BUILD_JOBS="2"
Kiểm chứng: theo dõi docker stats trong lúc Git push thấy đỉnh RAM container build dưới 2.4 GB.
Đặt lịch sao lưu PostgreSQL mỗi giờ (hoặc đồng bộ Litestream 10 giây cho SQLite WAL) về kho S3 ngoài máy chủ và thử nghiệm lệnh khôi phục thực tế.
pg_restore --clean --if-exists --no-owner -d staging_verify backup_latest.dump
# Hoặc với SQLite WAL: litestream restore -o /tmp/verify.db s3://dokploy-vault/pb/data.db
Kiểm chứng: truy vấn SELECT count(*) trên cơ sở dữ liệu staging khớp hoàn toàn với bản gốc.
Chạy song song môi trường mới trên Dokploy, kiểm tra healthcheck 200 OK trong start-first container rồi trỏ bản ghi A/CNAME sang IP máy chủ KVM.
curl -fsSI https://app.ten-mien-cua-ban.com/api/health
docker builder prune -af --filter "until=72h"
Kiểm chứng: mã phản hồi HTTP/2 200 kèm chứng chỉ TLS 1.3 từ Traefik v3 và không phát sinh lỗi 502.
Bảng tổng hợp dưới đây từ DokployHub đặt cạnh nhau mức RAM an toàn theo quy mô container và đơn giá công khai của 5 đối tác hạ tầng.
| Hồ sơ tải & Đối tác (DokployHub) | Cấu hình vCPU / RAM / NVMe | Mật độ phù hợp & Chống OOM | Giá niêm yết (2026-11-12) | Liên kết đối tác |
|---|---|---|---|---|
| Hostinger KVM 2 / KVM 4 | 2–4 vCPU · 8–16 GB RAM · 100–200 GB NVMe | 6–16 container Next.js / SQLite WAL + 1-Click Dokploy | $5.99 – $10.49/tháng | Hostinger qua DokployHub ↗ |
| Vultr Xung cao (HF) NVMe | 4–8 vCPU (3.5GHz+) · 8–16 GB RAM · 256–384 GB NVMe | Remote Build Server SSH tốc độ cao cho Rust / Monorepo | $48.00 – $96.00/tháng (theo giờ) | Vultr HF qua DokployHub ↗ |
| UltaHost VDS nhân vật lý riêng | 4–8 Nhân vật lý riêng · 16–32 GB RAM · 400–600 GB NVMe | Cụm Dokploy Swarm 20–40 container cho Agency (0% CPU steal) | $37.50 – $58.00/tháng | UltaHost qua DokployHub ↗ |
| InterServer 1TB Lát cắt lưu trữ | 1 vCPU · 2 GB RAM · 1,000 GB lưu trữ RAID | Kho MinIO / S3 đích cho pg_dump & Litestream ($0 phí PUT) | $6.00/tháng | InterServer qua DokployHub ↗ |
| ChemiCloud LiteSpeed NVMe | 2 vCPU · 2 GB RAM · 20 GB NVMe + HTTP/3 CDN | Tách trang tĩnh / tài liệu marketing khỏi VPS ứng dụng chính | $2.95/tháng | ChemiCloud qua DokployHub ↗ |
RAM Máy = Tổng App + Postgres + 4.5GB Đệm Build. Đối chiếu Phí Ghế Vercel + DB Lẻ (610 USD/tháng cho 12 app nhỏ) và Dokploy Trên KVM 32GB NVMe (24 USD/tháng, miễn phí ghế dev).
Mỗi bản vẽ chuyên sâu trên DokployHub cung cấp tệp mẫu cấu hình, giới hạn bộ nhớ cgroup và hướng dẫn xử lý sự cố cho từng tình huống cụ thể.
Cách chế độ output: "standalone" ép mức ăn RAM mỗi container Next.js từ 640 MB xuống 165 MB — giúp gói KVM $5.99–$10.49/tháng gánh trọn dàn micro-SaaS.
Lý do 2 lệnh git push liên tiếp làm đơ cứng VPS 4GB–8GB — và cách tách máy chủ Build qua SSH kết hợp NVMe Swap giữ độ trễ production ổn định tuyệt đối.
Vì sao docker compose up thông thường làm rớt kết nối 3–8 giây — và cách Dokploy dùng Docker Swarm start-first để cập nhật không gián đoạn 100%.
Quy trình đồng bộ pg_dump chuẩn xác, giữ trọn trải nghiệm tự động deploy từ GitHub, nhánh Preview PR và cắt hóa đơn $185/tháng xuống còn $10.49/tháng.
Xử lý triệt để lỗi vòng lặp ERR_TOO_MANY_REDIRECTS và vượt rào giới hạn 50 chứng chỉ/tuần khi bật đám mây cam Cloudflare cho hàng chục tên miền phụ.
Kết hợp bộ lập lịch S3 sẵn có của Dokploy với kho lưu trữ 1TB InterServer khóa giá $6/tháng — kèm kịch bản tự động diễn tập khôi phục dữ liệu hàng tuần.
Biến gói bảo trì web khách hàng thành biên lợi nhuận 98% nhờ phân quyền RBAC trên Dokploy, nén container tĩnh 14MB RAM và cô lập tài nguyên cgroup.
Vì sao trình đóng gói Railpack thế hệ mới nhẹ hơn Nixpacks truyền thống tới 62% — kèm bí quyết gắn bộ đệm BuildKit cho pnpm, Turborepo và Rust Cargo.
Sổ tay từng bước tối ưu SQLite chế độ WAL trên ổ NVMe cục bộ, sao lưu liên tục Litestream S3 và chuyển đổi từ Portainer CE sang Dokploy.
Khi bạn đẩy code qua Git, Dokploy hoặc Coolify v4 vẫn phải nuôi các container đang chạy (~1.5–3.5 GB) đồng thời khởi chạy trình biên dịch Turbopack/Webpack/Nixpacks ngốn thêm ~2.6 GB bộ nhớ tạm. Bật 4 GB NVMe Swap với vm.swappiness=10 kết hợp khóa NODE_OPTIONS giúp hấp thụ đỉnh bộ nhớ mà không kích hoạt Linux OOM Killer (mã lỗi 137).
DokployHub đã hợp nhất trọn vẹn kiến trúc SQLite chế độ WAL + Litestream sao lưu S3 liên tục (đặt order: stop-first để tránh khóa tệp .db) và quy trình nhập nguyên bản tệp docker-compose.yml từ Portainer CE vào Dokploy kèm tự động cấp chứng chỉ SSL Traefik v3.
Tất cả đơn giá trên DokployHub được tổng hợp từ trang bảng giá công khai của Hostinger, Vultr, UltaHost, InterServer, ChemiCloud, Vercel và Railway truy xuất ngày 2026-11-12. Do các hãng có thể điều chỉnh khuyến mãi theo kỳ hạn thanh toán, bạn luôn nên kiểm tra lại tại bước thanh toán cuối cùng.
Trong mô hình sổ tay kỹ thuật của DokployHub, Đội Ngũ Kỹ Thuật Chuyển Đổi PaaS DokployHub luôn khuyến nghị diễn tập khôi phục tệp sao lưu pg_dump hoặc luồng Litestream SQLite từ kho S3 trên máy chủ phụ trước khi hạ TTL DNS xuống 60 giây cho lộ trình Trang chủ Sổ tay PaaS.
Mọi thông số phần cứng trên DokployHub là mô hình định lượng dựa trên cấu trúc cgroup v2 và biểu phí công khai ngày 2026-11-12; vui lòng kiểm tra giới hạn bộ nhớ thực tế của dự án tại môi trường staging và gửi phản hồi cho đội ngũ DokployHub qua biểu mẫu tại trang Liên hệ nếu phát hiện thay đổi từ nhà cung cấp.
9 bản vẽ kỹ thuật chuyên sâu kiểm toán ngưỡng RAM, IOPS ổ cứng NVMe và chi phí gia hạn 36 tháng.
Hướng dẫn vận hành DokployHub cho Trần RAM dokploy 16GB: đối chiếu Hostinger (265.000đ/tháng) và Vultr (300.000đ/tháng) trên KVM 16GB NVMe (19 ms).
Hướng dẫn vận hành DokployHub cho NVMe 4K Traefik: đối chiếu Hostinger (265.000đ/tháng) và Vultr (300.000đ/tháng) trên KVM 16GB NVMe (19 ms).
Hướng dẫn vận hành DokployHub cho TCO 36 Tháng DokployHub: đối chiếu Hostinger (265.000đ/tháng) và Vultr (300.000đ/tháng) trên KVM 16GB NVMe (19 ms).
Hướng dẫn vận hành DokployHub cho Tuyến APAC dokploy: đối chiếu Hostinger (265.000đ/tháng) và Vultr (300.000đ/tháng) trên KVM 16GB NVMe (19 ms).
Hướng dẫn vận hành DokployHub cho Chống %st Traefik: đối chiếu Hostinger (265.000đ/tháng) và Vultr (300.000đ/tháng) trên KVM 16GB NVMe (19 ms).
Hướng dẫn vận hành DokployHub cho Sao Lưu ZSTD Nixpacks: đối chiếu Hostinger (265.000đ/tháng) và Vultr (300.000đ/tháng) trên KVM 16GB NVMe (19 ms).
Hướng dẫn vận hành DokployHub cho Thoát SaaS DokployHub: đối chiếu Hostinger (265.000đ/tháng) và Vultr (300.000đ/tháng) trên KVM 16GB NVMe (19 ms).
Hướng dẫn vận hành DokployHub cho Khóa UFW Traefik: đối chiếu Hostinger (265.000đ/tháng) và Vultr (300.000đ/tháng) trên KVM 16GB NVMe (19 ms).
Hướng dẫn vận hành DokployHub cho Nâng Dọc 32GB DokployHub: đối chiếu Hostinger (265.000đ/tháng) và Vultr (300.000đ/tháng) trên KVM 16GB NVMe (19 ms).
Hướng dẫn vận hành DokployHub cho Cảnh Báo dokploy: đối chiếu Hostinger (265.000đ/tháng) và Vultr (300.000đ/tháng) trên KVM 16GB NVMe (19 ms).