Infrastructure Architecture · Internal File Storage

Nextcloud AIO All-in-One

LANNginx HA Reverse ProxyDocker EngineBorgBackup
Đang mô phỏng
System Architecture & Activity Flows8 FLOWS
All Flows · Chọn một flow để xem riêng

LAN Client

Browser / Desktop / Mobile

Internal OnlyHTTPS Access

Internal DNS

nextcloud.internal.example

InternalNot Publicly Exposed

Nginx HA VIP

Reverse Proxy Entry Point

HA
reverse-proxy-vipHTTPS / 443

Nginx HA-01

TLS Termination + Reverse Proxy

Node 1
reverse-proxy-node-01Trusted Proxy

Nginx HA-02

TLS Termination + Reverse Proxy

Node 2
reverse-proxy-node-02Trusted Proxy
Nextcloud AIO Host
nextcloud-backend-ip · Docker Engine
Container bridge / Trusted proxy scope: aio-docker-network-cidr

Mastercontainer

AIO Orchestration · Docker socket

Apache

HTTP Backend · exposed to Nginx

:11000

Nextcloud App

Main PHP Application

User FilesShare

PostgreSQL

User · Share · Metadata · File Index

Redis

Cache · File Locking · notify_push

notify_push

High Performance Backend for Nextcloud Files

Collabora

Office on Nextcloud

ClamAV

Malware Protection for Nextcloud

BorgBackup

Backup / Restore integrated in AIO

IncrementalDedupCompressionEncryption

Backup Repository

Restore Point

/mnt/backup_nextcloud/borg
DNS Query HTTPS / 443 VIP → Active Nginx Node HTTP Backend · TCP/11000 Application Request Metadata / Cache / Locking AV Office Backup / Restore 1 2 3 4 5 6 7 8

Activity Flows 01—08

HTTPS / reverse proxy HTTP backend Backup / Restore Orchestration / Control

Proxy & Security

  • Internal Only: hệ thống phục vụ trong LAN, không công khai trực tiếp ra Internet.
  • TLS Termination: thực hiện tại Nginx HA; AIO Apache chỉ nhận HTTP backend trên port 11000.
  • Backend AIO: APACHE_PORT=11000, APACHE_IP_BINDING=all-interfaces, SKIP_DOMAIN_VALIDATION=true.
Trusted Proxies configured
loopback-addressipv6-loopback-address aio-docker-network-cidrreverse-proxy-vip reverse-proxy-node-01reverse-proxy-node-02 nextcloud-backend-ip

Backup & Operations Notes

  • Borg repository: /mnt/backup_nextcloud/borg. Không chỉnh sửa thủ công nội dung bên trong repository.
  • Retention Policy: keep-within 7d · keep-weekly 4 · keep-monthly 6.
  • Scheduler của AIO dùng UTC: ví dụ 04:00 UTC = 11:00 Asia/Ho_Chi_Minh.
  • Restore: tắt Daily Backup trước khi restore; không khởi động lại server, Docker hay dừng Borg container trong quá trình này.
  • Mastercontainer: quản lý các sibling container qua Docker socket; đây là control plane của AIO.
Scheduled Backup
Stop Required Containers
Create Consistent Borg Backup
Apply Retention Policy
Restart Containers