หลายคนกำลังหันหลังให้กับบริการกระแสหลักอย่าง Google Drive หรือ Dropbox และหันมาใช้โซลูชันแบบ self-hosted ที่ให้คุณจัดการข้อมูลได้เองตามต้องการ หนึ่งในตัวเลือกที่น่าสนใจคือ Nextcloud
บทความนี้จะพาคุณผ่านบทแนะนำแบบขั้นตอนต่อขั้นตอนสำหรับการติดตั้ง Nextcloud Docker บนระบบ Ubuntu และ Debian ครอบคลุมทุกขั้นตอนตั้งแต่การอัปเดตระบบและติดตั้ง dependencies ไปจนถึงการตั้งค่า web server และ PHP การตั้งค่าฐานข้อมูล และการทำการติดตั้งให้สมบูรณ์ด้วย Nextcloud Docker Compose
ทำไมต้อง Self-Host Nextcloud?
การ self-host Nextcloud หมายถึงการควบคุมพื้นที่จัดเก็บข้อมูลบนคลาวด์ของคุณเอง แทนที่จะพึ่งพาบริการกระแสหลักอย่าง Google Drive หรือ Dropbox กับ Nextcloud คุณมีอิสระในการจัดเก็บและแชร์ไฟล์ตามเงื่อนไขของตัวเอง พร้อมความเป็นเจ้าของข้อมูลอย่างสมบูรณ์และควบคุมการตั้งค่าความเป็นส่วนตัวได้เต็มที่
สำหรับผู้ใช้หลายคน ความสามารถในการปรับแต่งและเพิ่มฟังก์ชันผ่านปลั๊กอินและการเชื่อมต่อต่างๆ ถือเป็นจุดดึงดูดสำคัญ ด้วย Nextcloud docker และ Nextcloud docker compose คุณสามารถติดตั้งระบบแชร์ไฟล์ที่ปลอดภัยและเชื่อถือได้บนระบบยอดนิยมได้อย่างรวดเร็ว ทั้ง Nextcloud Ubuntu และ Nextcloud Debian ต่างรองรับการใช้งาน
การตั้งค่านี้เป็นทางออกที่ใช้งานได้จริงสำหรับผู้ที่ต้องการติดตั้ง Nextcloud โดยไม่ต้องรับข้อจำกัดของบริการ third-party กระบวนการ Nextcloud docker install ได้รับการออกแบบให้ตรงไปตรงมา แม้แต่ผู้ที่ไม่ใช่ sysadmin มากประสบการณ์ก็สามารถเริ่มต้น self-hosting ได้
การติดตั้ง Nextcloud Docker ยังช่วยประหยัดค่าใช้จ่ายเมื่อเทียบกับบริการ cloud เชิงพาณิชย์ เนื่องจากคุณจ่ายเฉพาะค่าฮาร์ดแวร์หรือ server instance ของตัวเอง นอกจากนี้ ตัวเลือกการปรับแต่งต่าง ๆ เช่น การตั้งค่า PHP หรือการเชื่อมต่อฐานข้อมูล MySQL ช่วยให้คุณกำหนดค่าสภาพแวดล้อมให้เหมาะกับความต้องการของคุณได้อย่างตรงจุด
หากคุณต้องการติดตั้ง Nextcloud บน Docker มีแหล่งข้อมูลและชุมชนผู้ใช้มากมายที่แชร์ตัวอย่างไฟล์ Nextcloud docker compose ให้นำไปใช้งานได้เลย ทำให้กระบวนการนี้ทั้งเรียนรู้ได้และคุ้มค่า
ข้อกำหนดเบื้องต้น
ก่อนเริ่มติดตั้ง ควรเตรียมสภาพแวดล้อมให้พร้อมก่อน ส่วนนี้ครอบคลุมพื้นฐานที่จำเป็น ตั้งแต่ความต้องการของระบบและการตั้งค่า server ไปจนถึง software dependencies ที่ต้องใช้สำหรับการติดตั้ง Nextcloud บน Docker:
| ส่วนประกอบ | ข้อกำหนด/ตัวเลือก | หมายเหตุ |
| ระบบปฏิบัติการ | Ubuntu (แนะนำ 22.04 LTS, 24.04 LTS), Red Hat Enterprise Linux 9/8, Debian 12 (Bookworm), SUSE Linux Enterprise Server 15, openSUSE Leap 15.5, CentOS Stream, Alpine Linux | Nextcloud Ubuntu ได้รับความนิยมสูง |
| CPU และสถาปัตยกรรม OS | 64-บิต | ตรวจสอบให้แน่ใจว่า CPU, OS และ PHP เป็นแบบ 64-bit |
| PHP | PHP 8.3 (หรือเวอร์ชันอื่น ๆ) | ใช้เวอร์ชัน 64-bit เพื่อหลีกเลี่ยงปัญหาด้านความเข้ากันได้ |
| ความจำ | ขั้นต่ำ: 128MB RAM ต่อ process; แนะนำ: 512MB ต่อ process; Updater: 256MB | ปรับตามการใช้งานจริง |
| การเข้าถึง | สิทธิ์ root หรือ sudo | จำเป็นสำหรับการปรับแต่งระดับระบบ |
| เครื่องมือ Container | Docker, Docker Compose | ช่วยให้การติดตั้งและจัดการทำได้ง่ายขึ้น |
| เว็บเซิร์ฟเวอร์ | Apache 2.4 (แนะนำใช้ mod_php หรือ php-fpm) หรือ nginx ร่วมกับ php-fpm | เลือกตามความต้องการของคุณหรือองค์กร |
| ฐานข้อมูล | MySQL (8.0/8.4), MariaDB (แนะนำ 10.6/10.11 หรือ 11.4) หรือ PostgreSQL | ต้องรองรับ InnoDB และ READ COMMITTED isolation level |
ขั้นตอนที่ 1: อัปเดตและเตรียมระบบ
ก่อนตั้งค่า Nextcloud Docker instance ให้อัปเดตระบบและติดตั้งเครื่องมือที่จำเป็นให้ครบก่อน เปรียบได้กับการจัดโต๊ะทำงานให้เรียบร้อยก่อนลงมือทำโปรเจกต์ รันคำสั่งต่อไปนี้บน Nextcloud Ubuntu server ของคุณ:
รีเฟรช Package List และอัปเกรด Package:
อัปเดต package repository และอัปเกรด package ที่ติดตั้งอยู่ด้วยคำสั่งเหล่านี้:
| sudo apt update sudo apt upgrade -y |
ติดตั้ง Docker, Docker Compose และเครื่องมือเสริม:
ติดตั้ง Docker, Docker Compose และเครื่องมืออื่น ๆ ที่มีประโยชน์ เช่น curl, wget และ build-essential ด้วยคำสั่ง:
| sudo apt install docker.io docker-compose curl wget build-essential -y |
(ไม่บังคับ) เพิ่มผู้ใช้ของคุณเข้ากลุ่ม Docker:
ขั้นตอนนี้ช่วยให้คุณรันคำสั่ง Docker ได้โดยไม่ต้องพิมพ์ sudo นำหน้าทุกครั้ง:
| sudo usermod -aG docker $USER |
หลังรันคำสั่งนี้ ให้ล็อกเอาต์แล้วล็อกอินใหม่เพื่อให้การเปลี่ยนแปลงมีผล
ตรวจสอบการติดตั้ง:
ตรวจสอบว่า Docker และ Docker Compose ติดตั้งสำเร็จแล้ว:
| docker --version docker-compose --version |
แนะนำอย่างยิ่งให้ติดตาม log ของ Docker เพื่อใช้แก้ปัญหา ซึ่งคุณสามารถดูและจัดการได้โดยทำตาม ขั้นตอนเหล่านี้.
เมื่อระบบของคุณอัปเดตแล้วและติดตั้ง dependency ครบทุกตัว ขั้นตอนต่อไปคือเลือก hosting ที่เชื่อถือได้ Cloudzy มีบริการ VPS ความเร็วสูง พร้อม storage แบบ NVMe SSD สูงสุด 240 GB (หรือสูงสุด 2 TB ด้วย GPU VPS) และ uptime 99.95% เหมาะอย่างยิ่งสำหรับโฮสต์ Nextcloud instance ของคุณ
ต่อไป เราจะตั้งค่า web server และปรับการตั้งค่า PHP เพื่อให้ทุกอย่างทำงานได้อย่างถูกต้องกับ Nextcloud Docker instance ของคุณ
ขั้นตอนที่ 2: ตั้งค่า Apache/Nginx และ PHP
เมื่อระบบของคุณพร้อมแล้ว ถึงเวลาตั้งค่า web server และ PHP ส่วนนี้จะพาคุณตั้งค่า Apache และ Nginx พร้อมกับปรับ PHP เพื่อให้ Nextcloud ทำงานได้อย่างถูกต้องบน Docker
การตั้งค่า Apache
หากคุณใช้ Apache ให้ทำตามขั้นตอนเหล่านี้:
สร้างไฟล์ config:
- เปิดไฟล์ใหม่สำหรับ Nextcloud:
| sudo nano /etc/apache2/sites-available/Nextcloud.conf |
- ภายในไฟล์นี้ ให้เพิ่มเนื้อหาในลักษณะนี้:
| Alias /Nextcloud "/var/www/Nextcloud/"
<Directory /var/www/Nextcloud/> <IfModule mod_dav.c> |
เปิดใช้งานไซต์:
- เปิดใช้งานการตั้งค่าใหม่:
| sudo a2ensite Nextcloud.conf |
เปิดใช้งานโมดูล Apache ที่จำเป็น:
- รันคำสั่งต่อไปนี้เพื่อเปิดใช้งานโมดูลที่ต้องการ:
| sudo a2enmod rewrite sudo a2enmod headers sudo a2enmod env sudo a2enmod dir sudo a2enmod mime |
หากต้องการใช้ PHP-FPM ร่วมกับ Apache (ผ่าน mod_fcgi) ให้เปิดใช้งานเพิ่มเติม:
| sudo a2enmod setenvif |
เปิดใช้งาน SSL (ไม่บังคับ):
- สำหรับการเชื่อมต่อที่ปลอดภัย ให้เปิดใช้งาน SSL ด้วยคำสั่ง:
| sudo a2enmod ssl sudo a2ensite default-ssl sudo service apache2 reload |
การกำหนดค่า Nginx
- สำหรับผู้ใช้ Nginx การตั้งค่าจะเริ่มจากการสร้าง server block:
สร้างไฟล์ Server Block:
- เปิดไฟล์ใหม่:
| sudo nano /etc/nginx/sites-available/Nextcloud |
- วางตัวอย่างการตั้งค่าดังนี้:
| server { listen 80; server_name your-server-ip or cloud.example.com;root /var/www/Nextcloud/; index index.php index.html /index.php$request_uri;location / { try_files $uri $uri/ /index.php?$args; }location ~ \.php$ { fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/run/php/php8.3-fpm.sock; fastcgi_index index.php; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; } } |
เปิดใช้งานการตั้งค่า:
- สร้าง symbolic link เพื่อเปิดใช้งานไซต์:
| sudo ln -s /etc/nginx/sites-available/Nextcloud /etc/nginx/sites-enabled/ |
ทดสอบและรีโหลด Nginx:
- ตรวจสอบการตั้งค่าและรีโหลด:
| sudo nginx -t sudo systemctl reload nginx |
การปรับแต่งการตั้งค่า PHP
Nextcloud ต้องการให้ PHP มีการตั้งค่าที่เหมาะสม ปรับแต่งได้โดยแก้ไขไฟล์คอนฟิกของ PHP ที่เกี่ยวข้อง:
สำหรับ Apache ร่วมกับ PHP:
| sudo nano /etc/php/8.3/apache2/php.ini |
สำหรับ Nginx ร่วมกับ PHP-FPM:
| sudo nano /etc/php/8.3/fpm/php.ini |
ในไฟล์ ให้ปรับค่าต่าง ๆ เช่น:
- memory_limit (ตัวอย่างเช่น 512M)
- upload_max_filesize (ตัวอย่างเช่น 100M)
- post_max_size (ตัวอย่างเช่น 100M)
- max_execution_time (ตัวอย่างเช่น 360)
หลังจากแก้ไขแล้ว ให้รีสตาร์ทเซอร์วิสที่เกี่ยวข้อง:
- Apache:
| sudo service apache2 restart |
- PHP-FPM:
| sudo systemctl restart php8.3-fpm |
เมื่อเว็บเซิร์ฟเวอร์พร้อมและ PHP ได้รับการปรับแต่งแล้ว ขั้นตอนต่อไปคือการตั้งค่าฐานข้อมูลสำหรับเก็บข้อมูลทั้งหมดของ Nextcloud
ขั้นตอนที่ 3: ตั้งค่าฐานข้อมูล
เมื่อระบบและเว็บเซิร์ฟเวอร์พร้อมแล้ว ขั้นตอนต่อไปคือสร้างฐานข้อมูลสำหรับ Nextcloud โดยจะต้องสร้างฐานข้อมูลและผู้ใช้เฉพาะพร้อมสิทธิ์ที่เหมาะสม มีวิธีการดังนี้:
1. ติดตั้ง MariaDB Server
ติดตั้งแพ็กเกจ MariaDB server:
| sudo apt install mariadb-server -y |
2. เสริมความปลอดภัยให้การติดตั้ง MariaDB
รันสคริปต์ความปลอดภัยเพื่อลบการตั้งค่าดีฟอลต์ที่ไม่ปลอดภัย:
| sudo mysql_secure_installation |
ระบบจะถามให้ตั้งรหัสผ่าน root และตอบคำถามด้านความปลอดภัยอื่น ๆ แนะนำให้ตอบ 'Y' (ใช่) ทุกข้อ
3. เข้าสู่ MariaDB Shell
เข้าถึง MariaDB shell ในฐานะ root user:
| sudo mysql -u root -p |
ป้อนรหัสผ่าน root ที่ตั้งไว้ระหว่างขั้นตอนการติดตั้งแบบปลอดภัย
4. สร้างฐานข้อมูลใหม่สำหรับ Nextcloud
ใน MariaDB shell ให้รันคำสั่งต่อไปนี้เพื่อสร้างฐานข้อมูลชื่อ Nextcloud:
| CREATE DATABASE Nextcloud CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci; |
5. สร้างผู้ใช้ฐานข้อมูลเฉพาะ
สร้างผู้ใช้ใหม่ชื่อ Nextclouduser พร้อมรหัสผ่านที่แข็งแกร่ง แทนที่ your_password_here ด้วยรหัสผ่านที่ปลอดภัยตามที่คุณต้องการ:
| CREATE USER 'Nextclouduser'@'localhost' IDENTIFIED BY 'your_password_here'; |
6. กำหนดสิทธิ์ที่จำเป็นให้ผู้ใช้
มอบสิทธิ์ทั้งหมดบนฐานข้อมูล Nextcloud ให้กับ Nextclouduser:
| GRANT ALL PRIVILEGES ON Nextcloud.* TO 'Nextclouduser'@'localhost'; |
7. บันทึกการเปลี่ยนแปลง
รีเฟรช privileges เพื่อให้การเปลี่ยนแปลงทั้งหมดมีผล:
| ล้างสิทธิ์; |
8. ออกจาก MariaDB Shell
ออกจาก MariaDB shell โดยพิมพ์:
| EXIT; |
เมื่อตั้งค่าและกำหนดค่าฐานข้อมูลเรียบร้อยแล้ว คุณพร้อมดำเนินการขั้นตอนถัดไป: การติดตั้ง Nextcloud ซึ่งจะครอบคลุมการดาวน์โหลดไฟล์ Nextcloud และกำหนดค่าให้เชื่อมต่อกับฐานข้อมูลที่สร้างไว้
ขั้นตอนที่ 4: ดาวน์โหลดและติดตั้ง Nextcloud
ขั้นตอนนี้ครอบคลุมการติดตั้ง Nextcloud เวอร์ชันล่าสุดบนระบบของคุณ คุณมีสองตัวเลือก: วิธีแรกใช้ Docker ซึ่งเหมาะสำหรับการติดตั้งแบบ containerized และวิธีที่สองเป็นการติดตั้งแบบ manual ตามขั้นตอนดั้งเดิม
วิธีที่ 1: ใช้ Docker Image อย่างเป็นทางการ
หากคุณต้องการใช้แนวทาง containerized ให้รันคำสั่งเหล่านี้:
ดึง Nextcloud Docker Image:
ดาวน์โหลด Nextcloud Docker image เวอร์ชันล่าสุดจาก Docker Hub:
| docker pull Nextcloud |
สร้างไฟล์ Docker Compose:
เพื่อให้จัดการได้ง่ายขึ้น ให้สร้างไฟล์ชื่อ docker-compose.yml ที่มีเนื้อหาดังต่อไปนี้:
| version: '3'
services: volumes: |
เริ่มต้น Containers:
รันคำสั่งนี้เพื่อเริ่มต้น Nextcloud และ container ของฐานข้อมูลในพื้นหลัง:
| docker-compose up -d |
วิธีที่ 2: ติดตั้งด้วยตนเองจาก Nextcloud Archive
ถ้าต้องการจัดการไฟล์โดยตรง ทำตามขั้นตอนนี้ได้เลย:
ดาวน์โหลดเวอร์ชันล่าสุด:
ดึง tar archive ล่าสุดของ Nextcloud:
| wget https://download.Nextcloud.com/server/releases/latest.tar.bz2 |
แตกไฟล์ Archive:
แตกไฟล์ที่ดาวน์โหลดมา:
| tar -xjf latest.tar.bz2 |
ย้ายโฟลเดอร์ Nextcloud:
ย้ายโฟลเดอร์ที่แตกแล้วไปยัง web directory:
| sudo mv Nextcloud /var/www/Nextcloud |
ตั้งค่าสิทธิ์ให้ถูกต้อง:
ปรับ ownership เพื่อให้ web server เข้าถึงไฟล์ได้:
| sudo chown -R www-data:www-data /var/www/Nextcloud |
เลือกวิธีที่เหมาะกับสไตล์ของคุณ วิธี Docker ติดตั้งง่ายด้วย Nextcloud docker compose ส่วนการติดตั้งด้วยตนเองให้ควบคุมไฟล์ได้โดยตรง ยิ่งกว่านั้น การใช้แพลน Cloudzy Docker VPS ช่วยสร้างแพลตฟอร์มที่พร้อมใช้สำหรับการ deploy Nextcloud ผ่าน Docker ทำให้กระบวนการติดตั้งง่ายขึ้นไปอีก
ต่อไป เราจะมาดูการตั้งค่า Nextcloud โดยละเอียด ทั้งการสร้าง virtual host เปิดใช้งาน SSL และอื่น ๆ เพื่อให้ระบบ cloud ที่โฮสต์เองของคุณสมบูรณ์
ขั้นตอนที่ 5: ตั้งค่า Nextcloud
เมื่อดาวน์โหลดและติดตั้ง Nextcloud เสร็จแล้ว ถึงเวลาสร้าง Apache Virtual Host และรักษาความปลอดภัยเว็บไซต์ด้วย SSL เพื่อให้เข้าถึง cloud storage ที่โฮสต์เองผ่านโดเมนของคุณได้
สร้างไฟล์ Apache Virtual Host
สร้างไฟล์ configuration สำหรับ Nextcloud:
| sudo nano /etc/apache2/sites-available/Nextcloud.conf |
วาง configuration ต่อไปนี้:
ปรับ DocumentRoot และ ServerName ให้ตรงกับการตั้งค่าของคุณ (เช่น เปลี่ยน cloud.example.com เป็นโดเมนหรือ IP ของเซิร์ฟเวอร์):
| <VirtualHost *:80> DocumentRoot /var/www/Nextcloud/ ServerName cloud.example.com<Directory /var/www/Nextcloud/> ต้องใช้ทั้งหมดที่อนุญาต อนุญาตการแทนที่ทั้งหมด Options FollowSymLinks MultiViews<IfModule mod_dav.c> Dav off </IfModule> </Directory> </VirtualHost> |
เปิดใช้งานการกำหนดค่าใหม่
แจ้ง Apache เกี่ยวกับการกำหนดค่าใหม่ของคุณ:
| sudo a2ensite Nextcloud.conf |
โหลด Apache ใหม่:
นำการเปลี่ยนแปลงไปใช้โดยโหลด Apache ใหม่:
| sudo systemctl reload apache2 |
รักษาความปลอดภัยให้เว็บไซต์ของคุณด้วย SSL
สำหรับการเข้าถึงที่ปลอดภัย คุณสามารถตั้งค่า SSL ได้ มีสองวิธีที่นิยมใช้กัน ได้แก่ การใช้ self-signed certificate หรือการขอ certificate ผ่าน Let's Encrypt
ตัวเลือกที่ 1: Self-Signed Certificate
เปิดใช้งาน SSL Module:
| sudo a2enmod ssl |
เปิดใช้งาน Default SSL Site:
| sudo a2ensite default-ssl |
โหลด Apache ใหม่:
| sudo systemctl reload apache2 |
ตัวเลือกที่ 2: Encrypt Certificate (แนะนำสำหรับเซิร์ฟเวอร์สาธารณะ)
ติดตั้ง Certbot และ Apache Plugin:
| sudo apt install certbot python3-certbot-apache -y |
- ขอและติดตั้ง Certificate:
แทนที่ cloud.example.com ด้วยโดเมนของคุณ:
| sudo certbot –apache -d cloud.example.com |
ทำตามขั้นตอนที่ปรากฏขึ้นเพื่อดำเนินการให้เสร็จสมบูรณ์
เมื่อกำหนดค่า Apache Virtual Host และติดตั้ง SSL เรียบร้อยแล้ว Nextcloud ของคุณก็พร้อมรับการเชื่อมต่อที่ปลอดภัยจากโดเมนที่คุณเลือก ขั้นตอนถัดไปคือการตั้งค่าฐานข้อมูลเพื่อจัดเก็บข้อมูล Nextcloud ซึ่งเป็นส่วนสำคัญที่ทำให้ระบบ self-hosted cloud ทำงานได้อย่างครบถ้วน
ขั้นตอนที่ 6: ปิดท้ายการติดตั้ง
เมื่อเว็บเซิร์ฟเวอร์และ PHP พร้อมใช้งานแล้ว ก็ถึงเวลาสรุปการติดตั้ง ขั้นตอนนี้เปรียบเหมือนการตกแต่งโปรเจกต์ให้เสร็จสมบูรณ์ก่อนเปิดตัวจริง
ปรับสิทธิ์การเข้าถึงไฟล์:
ก่อนเริ่ม installation wizard ให้รันคำสั่งต่อไปนี้เพื่อให้แน่ใจว่าเว็บเซิร์ฟเวอร์สามารถเข้าถึงไฟล์ Nextcloud ทั้งหมดได้:
| sudo chown -R www-data:www-data /var/www/Nextcloud/ |
เข้าถึง Nextcloud ผ่านเบราว์เซอร์:
เปิดเบราว์เซอร์แล้วพิมพ์ URL ของ Nextcloud instance ของคุณ เช่น:
| http://your-server-ip/Nextcloud |
คำสั่งนี้จะเปิด Nextcloud Installation Wizard ซึ่งเป็นหน้าอินเทอร์เฟซที่จะพาคุณผ่านขั้นตอนการตั้งค่าขั้นสุดท้าย
ดำเนินการผ่าน Installation Wizard:
ใน Wizard คุณจะถูกขอให้กรอกข้อมูลต่อไปนี้:
- รายละเอียดฐานข้อมูล (host, ชื่อฐานข้อมูล, ชื่อผู้ใช้ และรหัสผ่าน) ในการตั้งค่าแบบ Docker นั้น database host มักจะกำหนดเป็นชื่อ container หรือ localhost
- ชื่อผู้ใช้และรหัสผ่านสำหรับ Admin ของ Nextcloud
ทำตามคำแนะนำบนหน้าจอ จากนั้นคลิกปุ่ม "Finish setup" เมื่อเสร็จสิ้น
เมื่อผ่าน Wizard เรียบร้อยแล้ว Nextcloud จะเสร็จสิ้นการตั้งค่า และคุณจะเข้าสู่ Nextcloud Dashboard ที่พร้อมใช้งานทันที ในขั้นตอนถัดไป เราจะมาปรับแต่งค่าหลังการติดตั้ง เช่น cron jobs, caching และการเสริมความปลอดภัย เพื่อให้ระบบทำงานได้ราบรื่น
ขั้นตอนที่ 7: การตั้งค่าหลังการติดตั้ง
หลังจากผ่าน Nextcloud Web Installation Wizard แล้ว การปรับแต่งเพิ่มเติมเล็กน้อยจะช่วยให้การทำงานตามกำหนดเวลา ประสิทธิภาพ และความปลอดภัยดียิ่งขึ้น ส่วนนี้ครอบคลุมการตั้งค่า background jobs, การเชื่อมต่อ caching ด้วย Redis และการเสริมความแข็งแกร่งให้กับ Nextcloud ของคุณ
การเปิดใช้งาน Cron Jobs สำหรับงานตามกำหนดเวลา
เพื่อให้ Nextcloud ทำงานได้อย่างต่อเนื่อง ควรตั้งค่า cron job ให้รัน Nextcloud cron script ทุกห้านาที เปิด crontab สำหรับ web server user (โดยปกติคือ www-data):
| sudo crontab -u www-data -e |
จากนั้นเพิ่มบรรทัดนี้ที่ท้ายไฟล์:
| */5 * * * * php -f /var/www/Nextcloud/cron.php |
บันทึกและปิด editor งานนี้จะดูแลงานต่างๆ เช่น การลบไฟล์ชั่วคราว การส่งการแจ้งเตือน และงานบำรุงรักษาอื่นๆ
การติดตั้งและตั้งค่า Redis สำหรับ Caching
การใช้ Redis จะช่วยเพิ่มความเร็วให้กับ Nextcloud ด้วยการ cache ข้อมูลและปรับปรุงประสิทธิภาพการล็อกไฟล์ ก่อนอื่น ติดตั้ง Redis และ PHP extension สำหรับ Redis:
| sudo apt install redis-server php-redis -y |
จากนั้น แก้ไขไฟล์คอนฟิกของ Nextcloud (โดยปกติอยู่ที่ /var/www/Nextcloud/config/config.php) เพื่อเพิ่มการตั้งค่า caching โดยเพิ่มบรรทัดเหล่านี้ใน array $CONFIG:
| 'memcache.local' => '\\OC\\Memcache\\APCu', 'memcache.locking' => '\\OC\\Memcache\\Redis', 'redis' => array( 'host' => 'localhost', 'port' => 6379, ), |
การตั้งค่านี้จะสั่งให้ Nextcloud ใช้ APCu สำหรับ local caching และ Redis สำหรับการล็อกไฟล์ ซึ่งช่วยเพิ่มทั้งประสิทธิภาพและความเสถียรของระบบ
การเสริมความปลอดภัยให้กับ Nextcloud
มาตรการเพิ่มเติมเล็กน้อยเหล่านี้จะช่วยเพิ่มความปลอดภัยให้กับการติดตั้งของคุณ:
- ตั้งค่าสิทธิ์ของไฟล์ให้ถูกต้อง:
ปรับเจ้าของและสิทธิ์การเข้าถึงไดเรกทอรี Nextcloud เพื่อจำกัดการเข้าถึง:
| sudo chown -R www-data:www-data /var/www/Nextcloud sudo find /var/www/Nextcloud/ -type d -exec chmod 750 {} \; sudo find /var/www/Nextcloud/ -type f -exec chmod 640 {} \; |
- รันคำสั่ง Maintenance Mode:
เปิดใช้งาน maintenance mode ชั่วคราวเพื่อตรวจสอบความปลอดภัยหรืออัปเดตการตั้งค่าเพิ่มเติม:
| sudo -u www-data php /var/www/Nextcloud/occ maintenance:mode --on # (ดำเนินการ maintenance tasks ที่จำเป็นที่นี่) sudo -u www-data php /var/www/Nextcloud/occ maintenance:mode –off |
- ตรวจสอบการตั้งค่า Web Server:
ยืนยันว่าการตั้งค่า Apache หรือ Nginx ของคุณบังคับใช้ HTTPS และจำกัดการเข้าถึงที่ไม่ได้รับอนุญาตตามที่ต้องการ
เมื่อดำเนินการขั้นตอนสุดท้ายเหล่านี้แล้ว Nextcloud ของคุณจะจัดการ background tasks ได้อย่างมีประสิทธิภาพ ทำงานได้เร็วขึ้นด้วย caching และได้รับการป้องกันจากภัยคุกคามด้านความปลอดภัยได้ดียิ่งขึ้น
สรุป
ตอนนี้คุณได้สร้าง Nextcloud docker setup ตั้งแต่ต้นจนกลายเป็นระบบ self-hosted cloud storage ที่พร้อมใช้งานเต็มรูปแบบแล้ว ระบบได้รับการอัปเดต ติดตั้ง dependencies และปรับแต่ง web server พร้อมกับ PHP อย่างละเอียด ทำให้ Nextcloud บน Ubuntu ของคุณพร้อมทำหน้าที่เป็น hub แชร์ไฟล์ส่วนตัวของคุณ
ขณะที่คุณปรับแต่งการตั้งค่า ทดลองใช้ configuration ขั้นสูง หรือสำรวจ Nextcloud apps ใหม่ๆ การเลือก hosting provider ที่เหมาะสมก็สำคัญไม่แพ้กัน VPS ราคาถูก อย่าง Cloudzy รับประกันว่า Nextcloud ของคุณจะทำงานได้อย่างปลอดภัยและตอบสนองได้รวดเร็ว เป็นรากฐานที่มั่นคงสำหรับความต้องการ cloud storage ของคุณ
เพื่อความอุ่นใจยิ่งขึ้น แนะนำให้ศึกษาแนวทางด้านความปลอดภัยอย่างเป็นทางการที่ ความปลอดภัย Nextcloud ขั้นสูง และคำแนะนำการสำรองข้อมูลที่ Nextcloud คู่มือสำรองข้อมูล. แหล่งข้อมูลเหล่านี้ช่วยให้ข้อมูลของคุณปลอดภัยและเซิร์ฟเวอร์ทำงานได้อย่างราบรื่น