# Tự host Nextcloud trên VPS Stockholm: hướng dẫn từ A đến Z

URL: https://cloudj.net/vi/blog/nextcloud-vps-sweden
Published: 2026-11-11 · Updated: 2026-11-11

> Tự host Nextcloud trên VPS Stockholm: chọn cấu hình, cài Nextcloud All-in-One bằng Docker, tính trước dung lượng ổ đĩa và sao lưu cho đội làm việc ở châu Âu.

Tự host Nextcloud trên VPS giúp đội của bạn có hệ thống đồng bộ file, lịch, danh bạ và soạn thảo tài liệu trên máy chủ do chính mình quản lý, thay vì thuê dung lượng trên đám mây của người khác. Stockholm là vị trí hợp lý nếu đội ngũ hoặc khách hàng của bạn ở Thụy Điển hoặc các nước Bắc Âu, và bạn muốn dữ liệu nằm trên máy chủ trong EU. Bài này đi từ một máy chủ trống tới một Nextcloud chạy HTTPS, có sao lưu, và dành nhiều thời gian hơn cho phần mà nhiều người hay làm sai: dung lượng lưu trữ.

Trường hợp thường gặp với doanh nghiệp Việt Nam: công ty outsourcing có khách hàng hoặc văn phòng đại diện ở Bắc Âu, cần một nơi chia sẻ tài liệu mà khách hàng yên tâm về vị trí dữ liệu. Nếu bạn vẫn đang so sánh các thành phố ở châu Âu, hãy xem [hướng dẫn VPS châu Âu](https://cloudj.net/vi/blog/europe-vps-guide); bài [chọn VPS Thụy Điển](https://cloudj.net/vi/blog/best-vps-sweden) phân tích riêng Stockholm.

## Vì sao nên tự host Nextcloud trên VPS ở Stockholm

- **Vị trí dữ liệu nói rõ được.** File nằm trên máy chủ ở Stockholm, trong EU. Câu hỏi "dữ liệu của chúng tôi để ở đâu?" từ khách hàng hay bên kiểm toán trở nên dễ trả lời.
- **Gần người dùng.** Một đội Bắc Âu đồng bộ thư mục lớn cả ngày sẽ được lợi khi máy chủ ở cùng khu vực.
- **Đủ băng thông cho đồng bộ.** Gói tháng ở Stockholm bao gồm 5 TB băng thông, điều quan trọng khi mọi laptop và điện thoại cùng đồng bộ một thư mục.

Máy chủ cloud của Cloudj tại Thụy Điển có 30 gói dựng sẵn hoặc bạn tự chọn tổ hợp vCPU, RAM, ổ đĩa. Chi tiết trên [trang máy chủ Thụy Điển](https://cloudj.net/vi/cloud-servers/sweden).

Khi nào không nên chọn Stockholm: nếu người dùng chủ yếu ở Anh hoặc Bắc Mỹ, hãy đặt máy chủ gần họ hơn. Máy chủ London được giới thiệu trong bài [VPS London](https://cloudj.net/vi/blog/forex-vps-london), máy chủ bờ Đông nước Mỹ trong bài [VPS New York](https://cloudj.net/vi/blog/forex-vps-new-york); cả hai viết cho nhà giao dịch, nhưng phần nhận xét về vị trí áp dụng cho mọi loại ứng dụng. Còn nếu cả đội ở Việt Nam, Singapore hoặc Hồng Kông sẽ hợp lý hơn (Cloudj không có máy chủ tại Việt Nam).

## Bước 1: chọn cấu hình

Nextcloud là ứng dụng PHP, cần database và tốt nhất là có thêm Redis. Người chỉ đồng bộ file thì nhẹ; người soạn tài liệu trên trình duyệt, gọi video bằng Talk hay dùng tìm kiếm toàn văn thì nặng.

| Quy mô đội | Cấu hình khởi đầu | Ghi chú |
|---|---|---|
| 1 đến 10 người, file và lịch | 2 vCPU, 4 GB RAM | Chạy All-in-One thoải mái |
| 10 đến 50 người, thêm office online | 4 vCPU, 8 GB RAM | Bộ office cần nhiều RAM |
| Trên 50 người hoặc dùng Talk nhiều | 8 vCPU, 16 GB RAM trở lên | Cân nhắc CPU dedicated |

CPU dùng chung là đủ cho đội nhỏ; CPU general purpose hoặc dedicated hợp lý khi nhiều người cùng soạn tài liệu một lúc. Bạn có thể tăng CPU và RAM sau trong console, nên cứ bắt đầu ở mức thấp.

## Bước 2: tính dung lượng trước khi tải file lên

Lưu trữ là chỗ phần lớn dự án Nextcloud tự host gặp rắc rối. Ba thói quen sau giúp tránh điều đó:

1. **Ước lượng thật thà.** Cộng lượng dữ liệu mọi người sẽ thật sự tải lên trong năm đầu, rồi chừa chỗ cho phiên bản cũ và thùng rác. Nextcloud giữ các phiên bản file cũ và file đã xóa trong một thời gian, phần này có thể chiếm đáng kể so với dữ liệu đang dùng.
2. **Tách dữ liệu khỏi hệ thống.** Đặt thư mục dữ liệu của Nextcloud ở đường dẫn riêng (ví dụ `/mnt/ncdata`), để hệ điều hành và file không giành chỗ của nhau, việc sao lưu cũng gọn hơn.
3. **Mở rộng thay vì chuyển nhà.** Cloudj cho phép mở rộng ổ đĩa máy chủ ngay trong console. Sau đó bạn mở rộng partition và filesystem trên Linux. Nên làm vào giờ ít người dùng.

```bash
# sau khi mở rộng ổ đĩa trong console (ext4, root trên /dev/vda1)
sudo growpart /dev/vda 1
sudo resize2fs /dev/vda1
df -h /
```

Hãy đặt hạn mức (quota) cho từng người trong trang quản trị Nextcloud ngay từ ngày đầu. Việc này dễ hơn nhiều so với đi nhờ mọi người xóa bớt file về sau.

## Bước 3: chuẩn bị máy chủ

1. Tạo máy chủ Ubuntu hoặc Debian ở Stockholm trong [console Cloudj](https://app.cloudj.net), dùng SSH key.
2. Trỏ một bản ghi DNS như `cloud.example.com` về địa chỉ IP của máy chủ.
3. Gia cố SSH và bật firewall. Mở cổng 22, 80, 443 và 8080 (trang quản trị All-in-One, có thể đóng lại sau khi cài xong). Mở thêm 3478 TCP và UDP nếu dùng Talk. Bài [cấu hình firewall UFW](https://cloudj.net/vi/blog/ufw-firewall-vps) có sẵn lệnh.
4. Cài Docker theo bài [cài Docker trên VPS](https://cloudj.net/vi/blog/install-docker-vps).

## Bước 4: cài Nextcloud All-in-One

Nextcloud All-in-One (AIO) chạy Nextcloud, database, Redis, web server có HTTPS tự động và các thành phần tùy chọn trong container, tất cả do một master container quản lý. Đây là cách được hỗ trợ chính thức và đơn giản nhất để chạy Nextcloud trên một VPS.

```bash
sudo docker run \
  --init \
  --sig-proxy=false \
  --name nextcloud-aio-mastercontainer \
  --restart always \
  --publish 80:80 \
  --publish 8080:8080 \
  --publish 8443:8443 \
  --env NEXTCLOUD_DATADIR="/mnt/ncdata" \
  --volume nextcloud_aio_mastercontainer:/mnt/docker-aio-config \
  --volume /var/run/docker.sock:/var/run/docker.sock:ro \
  nextcloud/all-in-one:latest
```

Sau đó mở `https://ip-may-chu:8080`, chép lại passphrase hiện ra, nhập domain và chọn các container tùy chọn (office online, Talk, tìm kiếm toàn văn). AIO sẽ tự xin chứng chỉ cho domain và khởi động mọi thứ. Chỉ bật những thành phần bạn thật sự dùng, vì mỗi cái đều tốn RAM.

Nếu muốn cài thủ công với Nginx và PHP-FPM, [tài liệu quản trị Nextcloud](https://docs.nextcloud.com/server/latest/admin_manual/) hướng dẫn đầy đủ. Cách này linh hoạt hơn nhưng tốn công bảo trì hơn.

## Bước 5: sao lưu sao cho khôi phục được

Một máy chủ chứa file mà không có bản sao lưu đã thử khôi phục là một rủi ro. Hãy dùng nhiều lớp:

- **Sao lưu tích hợp của AIO.** AIO có sẵn BorgBackup. Chỉ định nơi lưu, đặt lịch sao lưu hằng ngày và thử khôi phục ít nhất một lần.
- **Bản sao ngoài máy chủ.** Chép kho Borg ra nơi khác, ví dụ một máy chủ thứ hai ở thành phố khác hoặc một bucket lưu trữ đối tượng (object storage). Bản sao lưu nằm trên cùng ổ đĩa không cứu được bạn khi mất máy chủ.
- **Custom image sau khi cài đặt.** Lưu custom image của máy chủ đã cấu hình giúp dựng lại phần hệ thống nhanh; dữ liệu vẫn lấy từ Borg.

Bài [chiến lược sao lưu VPS](https://cloudj.net/vi/blog/vps-backup-strategy) giải thích cách chọn tần suất và thời gian giữ bản sao.

## Bước 6: giữ hệ thống khỏe mạnh

- Cập nhật qua giao diện AIO; nó cập nhật tất cả container cùng lúc.
- Theo dõi dung lượng đĩa và RAM trong biểu đồ của console, đặt cảnh báo từ sớm trước khi đĩa đầy.
- Sau mỗi lần cập nhật, xem mục **Administration settings > Overview** trong Nextcloud; ở đó liệt kê các cảnh báo nên xử lý.
- Bật xác thực hai lớp cho tài khoản quản trị.

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

### VPS chạy Nextcloud cần bao nhiêu RAM?

Với đội nhỏ chỉ dùng file và lịch, 2 vCPU và 4 GB RAM là mức khởi đầu thoải mái cho All-in-One. Nếu bật office online hoặc Talk, hãy tăng RAM trước khi tăng CPU.

### Sau này có thêm dung lượng được không?

Được. Bạn mở rộng ổ đĩa trong console Cloudj, rồi mở rộng partition và filesystem trên máy chủ. Giữ thư mục dữ liệu ở đường dẫn riêng để việc này đơn giản.

### Đội ở Việt Nam có nên đặt Nextcloud ở Stockholm không?

Chỉ khi người dùng hoặc khách hàng chính ở Bắc Âu, hoặc có yêu cầu dữ liệu nằm trong EU. Nếu phần lớn người dùng ở Việt Nam, hãy chọn vị trí gần họ hơn.

### Thanh toán thế nào?

Bạn nạp tiền vào số dư tài khoản bằng USD; khách hàng Việt Nam có thể nạp bằng chuyển khoản ngân hàng bằng VND. Máy chủ có thể trả theo giờ hoặc trả trước 1, 3, 6 hay 12 tháng.

## Dựng máy chủ Nextcloud của bạn

Hãy bắt đầu với một máy chủ Stockholm vừa phải trong [console Cloudj](https://app.cloudj.net), cài All-in-One, rồi mở rộng ổ đĩa và RAM khi dữ liệu của đội tăng lên. Giá cập nhật cho Thụy Điển có trên [trang bảng giá](https://cloudj.net/vi/pricing).
