# Cài Nextcloud trên VPS: Google Drive riêng, từng bước (2026)

> Cài Nextcloud trên VPS làm ổ đám mây riêng - so sánh 3 cách cài, cấu hình RAM, database, cron, sao lưu, nâng cấp an toàn, và cài 1-click bằng ZoPanel.

Source: https://zopanel.net/vi/blog/self-host-nextcloud  
Updated: 2026-10-21

## Ý chính

- Có ba cách cài Nextcloud trên VPS - app 1-click trong panel, Nextcloud All-in-One chính thức, hoặc tự cài PHP và database - đánh đổi giữa công sức và quyền kiểm soát.
- Tài liệu Nextcloud chỉ khuyên dùng SQLite cho thử nghiệm và hệ thống rất nhỏ; nhóm nhiều người nên dùng MariaDB hoặc PostgreSQL.
- Tác vụ nền nên chạy bằng cron mỗi 5 phút, không dùng chế độ AJAX mặc định.
- Nextcloud không cho nhảy cóc phiên bản lớn khi nâng cấp, nên hãy cập nhật đều đặn.

Để cài Nextcloud trên VPS, bạn có ba lựa chọn: dùng app cài 1-click trong control panel (nhanh nhất, hợp cho cá nhân và gia đình), dùng **Nextcloud All-in-One** (AIO), bản cài chính thức chạy bằng Docker có sẵn PostgreSQL, Redis và sao lưu, hoặc tự cài nginx, PHP và database (kiểm soát nhiều nhất, tốn công nhất). Với một nhóm nhỏ, VPS 2 GB RAM, ổ đĩa đủ chứa dữ liệu và một tên miền là đủ để bắt đầu.

Bài này giúp bạn chọn đúng cách cài, chuẩn bị server, rồi đi qua những việc mà nhiều hướng dẫn bỏ qua nhưng quyết định Nextcloud chạy ổn hay chập chờn: database, cron, cache, sao lưu và nâng cấp.

## Nextcloud là gì, có nên tự host không?

Nextcloud là phần mềm mã nguồn mở thay thế Google Drive hay Dropbox: đồng bộ file giữa máy tính và điện thoại, chia sẻ link, kèm lịch, danh bạ, ghi chú và nhiều app khác. Có app desktop cho Windows, macOS, Linux và app di động.

Tự host hợp lý khi:

- Bạn muốn dữ liệu nằm trên server của mình, không phải của một nhà cung cấp lớn.
- Bạn cần nhiều dung lượng cho cả gia đình hoặc công ty mà không trả phí theo từng người dùng.
- Bạn chấp nhận tự lo cập nhật và sao lưu. Đây là phần nhiều người đánh giá thấp: **mất server là mất dữ liệu**, trừ khi bạn có bản sao ở chỗ khác.

## Chọn cách cài Nextcloud trên VPS

| Cách cài | Database | Hợp với | Công sức |
| --- | --- | --- | --- |
| App 1-click trong panel (ví dụ ZoPanel) | SQLite có sẵn | Một người, gia đình nhỏ, dùng thử | Vài phút |
| [Nextcloud All-in-One](https://github.com/nextcloud/all-in-one) | PostgreSQL, kèm Redis, APCu | Nhóm, công ty nhỏ, muốn bản chính thức | 30 - 60 phút |
| Tự cài nginx + PHP-FPM + MariaDB/PostgreSQL | Tuỳ chọn | Người cần tuỳ biến sâu, đã quen vận hành LEMP | Vài giờ, và bảo trì liên tục |

Theo trang README của dự án, AIO là cách cài chính thức bằng Docker: gồm Nextcloud, PostgreSQL, Redis, backend Client Push, và tuỳ chọn Nextcloud Office, Talk, ClamAV, cùng sao lưu dựa trên BorgBackup. AIO có giao diện quản trị riêng ở cổng 8080 và hỗ trợ chạy sau reverse proxy có sẵn.

## Cần VPS cấu hình bao nhiêu?

- **RAM.** Tài liệu yêu cầu hệ thống của Nextcloud ghi mức tối thiểu 128 MB và khuyến nghị 512 MB cho mỗi tiến trình PHP. Trên thực tế, với một vài người dùng, tính khoảng 1 GB cho Nextcloud cộng thêm phần cho hệ điều hành, database và các dịch vụ khác. VPS 2 GB là điểm khởi đầu hợp lý; bật Nextcloud Office hoặc Talk thì cần thêm.
- **Ổ đĩa.** Đây thường là giới hạn thật. Tính dung lượng dữ liệu dự kiến, cộng chỗ cho phiên bản cũ của file và thùng rác (Nextcloud giữ lại theo mặc định), cộng chỗ cho sao lưu nếu lưu tạm trên server.
- **Hệ điều hành.** Ubuntu 24.04 hoặc Debian 12/13, bản 64-bit. Tài liệu Nextcloud chỉ khuyên dùng hệ 64-bit.
- **Tên miền và HTTPS.** Ứng dụng desktop và di động đăng nhập qua tên miền; luôn dùng HTTPS. Xem bài [trỏ tên miền về VPS](/vi/blog/point-domain-to-vps) nếu chưa làm.

## Cài Nextcloud trên VPS bằng ZoPanel (1-click)

Nếu VPS chạy ZoPanel, Nextcloud có sẵn trong **Kho ứng dụng**:

1. Nếu chưa có Docker, bấm **Kho ứng dụng → Cài Docker**.
2. Chọn **Nextcloud**, nhập tên miền (ví dụ `cloud.example.com`), bấm **Cài đặt**. Log tác vụ hiển thị quá trình tải image và khởi động.
3. Trỏ bản ghi A của tên miền về IP server. SSL Let's Encrypt được cấp tự động.
4. App mới được **khoá riêng cho bạn**: người khác chỉ thấy trang "đang được thiết lập". Ở tab **Docker** của website, bấm **Mở ứng dụng (chỉ mình tôi)**, tạo tài khoản quản trị trong trình cài đặt Nextcloud, rồi bấm **Đã thiết lập xong — mở công khai**. Bước khoá này quan trọng: với Nextcloud, ai mở trang cài đặt trước sẽ tạo tài khoản admin.
5. Cài app desktop hoặc điện thoại, đăng nhập bằng tên miền của bạn.

Những gì ZoPanel làm sẵn: container chạy với giới hạn RAM 1024 MB và 1 CPU, chỉ lắng nghe ở `127.0.0.1` sau nginx có SSL, bật user namespace, không kết nối được tới database, Redis hay panel trên server. Dữ liệu nằm ở `/var/lib/zopanel-apps/<instance>/`, chỉ root và container đọc được. Nút **Cập nhật bản mới** ở tab **Docker** kéo image mới nhất mà giữ dữ liệu.

**Giới hạn cần biết, nói thẳng:** bản 1-click dùng SQLite có sẵn, và Nextcloud sẽ hiện cảnh báo hiệu năng về điều đó. Với một người hoặc gia đình nhỏ thì ổn. Nếu cả công ty đồng bộ nhiều file, hãy dùng AIO hoặc tự cài với MariaDB/PostgreSQL. Xem mô tả từng app trong [tài liệu Kho ứng dụng](/vi/docs/app-catalog) và cách cô lập container trong [tài liệu App Store](/vi/docs/apps).

## Cài Nextcloud All-in-One thủ công

Với nhóm nhiều người, AIO là lựa chọn mà chính Nextcloud khuyên dùng. Quy trình tổng quát:

1. Cài Docker từ kho chính thức của Docker (làm theo hướng dẫn cho Ubuntu hoặc Debian trên docs.docker.com, đừng chạy script lạ).
2. Chạy container `nextcloud-aio-mastercontainer` theo lệnh trong [README của AIO](https://github.com/nextcloud/all-in-one). Lệnh này thay đổi theo thời gian, nên hãy sao chép từ README thay vì từ blog cũ.
3. Mở giao diện AIO, lưu lại **passphrase** nó cấp, nhập tên miền, chọn các thành phần (Office, Talk, ClamAV...) và bấm khởi động.
4. Thiết lập lịch sao lưu Borg trong giao diện AIO, và **đẩy bản sao ra ngoài server**.

Nếu VPS đã có nginx hoặc một panel chiếm cổng 80/443, đọc phần reverse proxy trong tài liệu AIO: bạn chạy AIO ở một cổng nội bộ và để web server hiện có chuyển tiếp vào.

## Những việc phải làm sau khi cài

Dù cài bằng cách nào, hãy mở **Administration settings → Overview** (Cài đặt quản trị → Tổng quan) trong Nextcloud: trang này liệt kê cảnh báo bảo mật và cấu hình. Các điểm quan trọng:

### Tác vụ nền: dùng cron

Theo [tài liệu Nextcloud](https://docs.nextcloud.com/server/latest/admin_manual/configuration_server/background_jobs_configuration.html), chế độ AJAX mặc định kém tin cậy nhất; nên dùng **Cron** chạy mỗi 5 phút. Khi tự cài:

```bash
sudo crontab -u www-data -e
# thêm dòng:
*/5 * * * * php -f /var/www/nextcloud/cron.php
```

Rồi chọn **Cron** trong **Administration settings → Basic settings → Background jobs**. Trang này cũng hiển thị lần chạy gần nhất, cách nhanh nhất để biết cron có thật sự chạy hay không, kể cả với bản cài bằng Docker.

### Các lệnh `occ` hay dùng

```bash
# chạy dưới user của web server (hoặc docker exec -u www-data <container> php occ ...)
sudo -u www-data php occ status
sudo -u www-data php occ config:system:get trusted_domains
sudo -u www-data php occ db:add-missing-indices
sudo -u www-data php occ maintenance:mode --on    # trước khi sao lưu thủ công
```

`trusted_domains` phải chứa tên miền bạn dùng, nếu không Nextcloud báo "truy cập qua tên miền không tin cậy". Khi đứng sau reverse proxy có HTTPS, đặt `overwriteprotocol` là `https` để link chia sẻ không bị sinh ra dạng `http://`.

### Bảo mật tài khoản

- Bật xác thực hai lớp (app Two-Factor TOTP) cho mọi tài khoản quản trị.
- Không mở đăng ký tự do; quản trị viên tạo tài khoản cho người dùng.
- Tài khoản quản trị dùng mật khẩu mạnh và không dùng tên `admin`.

## Sao lưu Nextcloud: ba thứ phải có

Một bản sao lưu Nextcloud đầy đủ gồm: **thư mục dữ liệu** (file người dùng), **database**, và **thư mục config** (chứa `config.php` với secret và salt). Thiếu config, bạn khôi phục được file nhưng phải dựng lại cấu hình và có thể mất các thiết lập gắn với secret cũ.

- Với AIO: dùng sao lưu Borg tích hợp và chép kho Borg ra nơi khác.
- Với bản cài 1-click trong ZoPanel: dữ liệu app nằm ở `/var/lib/zopanel-apps/<instance>/`, ngoài thư mục home của tài khoản hosting. Hãy kiểm tra cơ chế sao lưu bạn đang dùng có bao gồm đường dẫn này không; nếu không, sao lưu riêng thư mục đó (ví dụ bằng restic) lên kho ngoài server.
- Dù cách nào, nguyên tắc là 3-2-1: ba bản, hai nơi lưu khác nhau, một bản ở ngoài server. Xem bài [chiến lược sao lưu 3-2-1](/vi/blog/website-backup-strategy).

## Nâng cấp Nextcloud an toàn

[Tài liệu nâng cấp](https://docs.nextcloud.com/server/latest/admin_manual/maintenance/upgrade.html) nói rõ: **không được nhảy cóc phiên bản lớn**. Muốn lên từ phiên bản N tới N+2, bạn phải đi qua N+1. Hệ quả thực tế:

- Cập nhật đều đặn, đừng để server tụt lại nhiều phiên bản lớn. Bản Docker nhảy thẳng lên phiên bản mới nhất có thể thất bại nếu bản đang chạy quá cũ.
- Sao lưu trước mỗi lần nâng cấp lớn.
- Kiểm tra các app bên thứ ba đã hỗ trợ phiên bản mới chưa; app không tương thích sẽ bị tắt sau nâng cấp.

## Kết luận

Cài Nextcloud trên VPS chỉ mất vài phút, nhưng chạy nó ổn định lâu dài là chuyện của database phù hợp, cron, sao lưu ra ngoài server và cập nhật đều đặn. Cho cá nhân và gia đình, bản 1-click là đủ; cho nhóm làm việc thật, hãy dùng AIO hoặc tự cài với database đầy đủ.

Nếu bạn muốn cài Nextcloud cùng các app khác như Vaultwarden hay n8n trên một server, mỗi app có tên miền, SSL và giới hạn RAM riêng, hãy thử gói Free của ZoPanel và xem [bảng giá](/vi/pricing). Bài [tự host Vaultwarden](/vi/blog/self-host-vaultwarden) là bước tiếp theo nhiều người chọn.

## Câu hỏi thường gặp

### VPS bao nhiêu RAM thì chạy được Nextcloud?

Với một vài người dùng, Nextcloud cần khoảng 1 GB RAM, cộng thêm cho hệ điều hành và database, nên VPS 2 GB là điểm khởi đầu hợp lý. Bật Nextcloud Office, Talk hay nhiều người đồng bộ cùng lúc thì cần nhiều hơn.

### Nextcloud dùng SQLite có ổn không?

Tài liệu Nextcloud chỉ khuyên dùng SQLite cho thử nghiệm và hệ thống rất nhỏ. Một người hoặc gia đình nhỏ dùng được; nhóm nhiều người đồng bộ nhiều file nên dùng MariaDB hoặc PostgreSQL.

### Nên cài Nextcloud bằng Docker hay cài trực tiếp?

Docker (AIO hoặc app 1-click) dễ cài, dễ cập nhật và tách biệt khỏi hệ thống. Cài trực tiếp cho bạn kiểm soát mọi cấu hình PHP và web server nhưng bạn phải tự bảo trì. Với đa số người, Docker là lựa chọn ít rủi ro hơn.

### Có thể bỏ qua một phiên bản lớn khi nâng cấp Nextcloud không?

Không. Nextcloud yêu cầu nâng cấp lần lượt qua từng phiên bản lớn. Vì vậy hãy cập nhật thường xuyên và sao lưu trước mỗi lần nâng cấp.

### Sao lưu Nextcloud cần những gì?

Ba thứ: thư mục dữ liệu, database và thư mục config. Bật chế độ bảo trì trước khi sao lưu thủ công để dữ liệu nhất quán, và luôn giữ một bản ở ngoài server.
