Synology: Cài Đặt Nextcloud

Nextcloud là nền tảng lưu trữ và chia sẻ dữ liệu mã nguồn mở cho phép cá nhân và tổ chức xây dựng hệ thống đám mây riêng an toàn, linh hoạt và dễ quản lý. Không chỉ hỗ trợ đồng bộ tệp tin giữa nhiều thiết bị, Nextcloud còn tích hợp các tính năng cộng tác như chia sẻ tài liệu, lịch làm việc, email, hội nghị trực tuyến và quản lý công việc trên cùng một nền tảng. Với khả năng kiểm soát dữ liệu hoàn toàn nội bộ, phân quyền chi tiết và hỗ trợ mã hóa bảo mật, Nextcloud là giải pháp phù hợp cho doanh nghiệp, trường học và tổ chức cần xây dựng môi trường làm việc số riêng tư, ổn định và tiết kiệm chi phí.

Các Bước Cài Đặt

► Cài đặt “Portainer” theo hướng dẫn bài viết : Synology: Cài Đặt Portainer

► Cài đặt chứng chỉ Wildcard Certificate của Synology theo bài viết này Follow my guide to get a Wildcard Certificate.

► Tạo Reverse Proxy trên Synology theo bài viết này

Lưu ý: Nếu bạn quản lý tên miền qua Cloudclare thì bỏ qua 2 bước trên

► Vào File Station ► mở thư mục docker ► tạo một thư mục mới và đặt tên là nextcloud
Lưu ý : Chỉ sử dụng chữ thường, không sử dụng chữ hoa.

► Bên trong thư mục “nextcloud” tạo thêm các thư mục config , custom_apps , data , db , html , redis , themes
Lưu ý : Chỉ sử dụng chữ thường, không sử dụng chữ hoa.

► Tạo file my.cnf ► nhập nội dung bên dưới và copy vào thư mục db

[mysqld]
transaction-isolation = READ-COMMITTED
binlog-format = ROW
innodb-read-only-compressed = OFF

► Nhấp chuột phải vào thư mục nextcloud chọn Properties

► Vào trang Permission ► chọn Advanced options và chọn “Make inherited permissions explicit

► Chọn Everyone ► Edit 

► Chọn quyền Read và Write ► Chọn Done

► Chọn “Apply to this folder, sub-folders and files“ ► Save

► Đăng nhập vào “Dashboard Portainer

► Trong thanh bên trái của Portainer chọn vào Stacks rồi chọn + Add stack

► Trong mục Name nhập nextcloud

Lưu ý : Trước khi dán đoạn mã vào khung Web editor, hãy thay đổi giá trị được đánh dấu.

services:
mariadb:
container_name: Nextcloud-DB
image: mariadb:11.8-noble #LTS Long Time Support Until October 15, 2033.
security_opt:
- no-new-privileges:false
command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW --innodb-read-only-compressed=OFF
volumes:
- /volume1/docker/nextcloud/db:/var/lib/mysql:rw
- /volume1/docker/nextcloud/db:/etc/mysql/conf.d:rw
environment:
- MYSQL_ROOT_PASSWORD=rootpass
- MYSQL_PASSWORD=password
- MYSQL_DATABASE=nextcloud
- MYSQL_USER=nextcloud
- TZ=Asia/Saigon
restart: on-failure:5

redis:
image: redis
container_name: Nextcloud-REDIS
hostname: nextcloudredis
user: 1026:100
healthcheck:
test: ["CMD-SHELL", "redis-cli ping || exit 1"]
volumes:
- /volume1/docker/nextcloud/redis:/data:rw
environment:
TZ: Asia/Saigon
restart: on-failure:5

nextcloud:
container_name: Nextcloud
ports:
- 8082:80
depends_on:
mariadb:
condition: service_started
redis:
condition: service_healthy
environment:
- REDIS_HOST=nextcloudredis
- NEXTCLOUD_ADMIN_USER=username
- NEXTCLOUD_ADMIN_PASSWORD=mật khẩu
- NEXTCLOUD_TRUSTED_DOMAINS=nextcloud.yourname.synology.me 192.168.1.240
- TRUSTED_PROXIES=192.168.1.240
- OVERWRITEHOST=nextcloud.yourname.synology.me
- OVERWRITEPROTOCOL=https
- MYSQL_PASSWORD=password
- MYSQL_DATABASE=nextcloud
- MYSQL_USER=nextcloud
- MYSQL_HOST=mariadb
healthcheck:
test: curl -f http://localhost:80/ || exit 1
volumes:
- /volume1/docker/nextcloud/html:/var/www/html:rw
- /volume1/docker/nextcloud/custom_apps:/var/www/html/custom_apps:rw
- /volume1/docker/nextcloud/config:/var/www/html/config:rw
- /volume1/docker/nextcloud/data:/var/www/html/data:rw
- /volume1/docker/nextcloud/themes:/var/www/html/themes:rw
image: nextcloud
restart: on-failure:5

cron:
image: nextcloud:apache
container_name: Nextcloud-CRON
restart: always
volumes:
- /volume1/docker/nextcloud/config:/var/www/html/config:rw
- /volume1/docker/nextcloud/html:/var/www/html:rw
- /volume1/docker/nextcloud/custom_apps:/var/www/html/custom_apps:rw
- /volume1/docker/nextcloud/data:/var/www/html/data:rw
entrypoint: /cron.sh
depends_on:
mariadb:
condition: service_started
redis:
condition: service_started

► Chọn Deploy the stack

► Sau khi chạy hoàn tất bạn sẽ thấy thông báo này ở góc trên bên phải màn hình: “Success Stack successfully deployed“.

► Quá trình cài đặt có thể mất vài phút. Mở trình duyệt và nhập https://nextcloud.yourname.synology.me ► Tạo Username và đặt Password ► Sau đó làm theo các hướng dẫn cài đặt tiếp theo

► Giao diện cài đặt Nextcloud của bạn sẽ trông như thế này

► Ở góc trên bên phải trang chọn View profile và Edit Profile

► nhập Địa chỉ Gmail của bạn và chọn Basic settings

► Khu vực Email server nhập thông tin Email của bạn và chọn Save

► Kiểm tra mail thành quả

► Sửa lỗi CardDAVCalADV! ► Vào File Station ► nextcloud ► html. Tải file .htaccess về máy tính và xoá 2 dòng bên dưới:

RewriteRule ^.well-known/carddav /remote.php/dav/ [R=301,L]
RewriteRule ^.well-known/caldav /remote.php/dav/ [R=301,L]

► Thay thế bằng 2 dòng này

RewriteRule ^.well-known/carddav https://nextcloud.yourname.synology.me/remote.php/dav/ [R=301,L]
RewriteRule ^.well-known/caldav https://nextcloud.yourname.synology.me/remote.php/dav/ [R=301,L]

► Lưu lại file .htaccess và tải lên thư mục html như cũ. 

Lưu ý: Nên xoá file cũ trong thư mục rồi tải file mới lên.

Lưu ý: Bắt buộc phải thêm dấu . vào đầu tên file : .htaccess


Nguồn: tổng hợp

Lên đầu trang