Lưu trữ đám mây là dữ liệu của bạn được lưu trữ trên các máy chủ từ xa bởi một công ty vô danh mà bạn phải tin tưởng để trao quyền riêng tư và bảo mật của các tài liệu và ảnh quý giá của mình.
Tuy nhiên, có một tùy chọn khác: Host file của bạn trên máy chủ đám mây của riêng bạn, chạy trên máy tính ở nhà hoặc văn phòng do bạn sở hữu. Một trong những dịch vụ phổ biến nhất để đạt được điều này là Nextcloud.
Cài trực tiếp lên máy
Để Next Cloud chạy thành công, chúng ta cần cài đặt PHP và các phần phụ thuộc khác. Để đạt được điều này, hãy thực hiện lệnh:
apt install mysql-server php-mysql
Sau khi cài đặt hoàn tất, đăng nhập vào MySQL
mysql -u root -p
Tiếp theo tạo cơ sở dữ liệu cho Next Cloud và gán cho 1 user khác.
CREATE DATABASE nextclouddb; GRANT ALL ON nextclouddb.* TO 'nextcloud_user'@'localhost' IDENTIFIED BY 'strong password'; FLUSH PRIVILEGES; EXIT;
sudo apt-get install -y php php-gd php-curl php-zip php-dom php-xml php-siplexml php-mbstring
Để xác minh phiên bản PHP bạn đã cài đặt, hãy chạy lệnh: php -V
php 7.4 thì dùng ver 25 trở lên https://download.nextcloud.com/server/releases/
Tải xuống tệp zip Nextcloud bằng lệnh:wget https://download.nextcloud.com/server/releases/nextcloud-16.0.1.zip
Tiếp theo giải nén file nén bằng lệnh: unzip nextcloud-16.0.1.zip
Tiếp theo di chuyển thư mục vừa giải nén vào thư mục webroot: mv nextcloud /var/www/
Điều hướng đến thư mục gốc của tài liệu và thay đổi quyền sở hữu tệp thành www-data. cd /var/www
sudo chown -R www-data:www-data nextcloud
Ngoài ra, thay đổi quyền của tệp: sudo chmod -R 755 nextcloud
How to install NextCloud on Debian 10
Cấu hình nginx theo hướng dẫn https://www.howtoforge.com/tutorial/how-to-install-nextcloud-with-nginx-on-ubuntu-20.04.
https://docs.nextcloud.com/server/25/admin_manual/installation/nginx.html
Nếu muốn chạy http thôi thì bỏ dòng: fastcgi_params HTTPS on
Thêm app vào bằng cách truy cập vào thư mục nextcloud. Nhập câu lệnh thêm
sudo -u www-data php -d memory_limit=512M ./occ app:install richdocumentscode_arm64
Trường hợp không cài vô được thì download:
wget https://github.com/CollaboraOnline/richdocumentscode/releases/download/23.5.502/richdocumentscode_arm64.tar.gz
bun nén và chép vào thư mục:
tar -zxvf richdocumentscode_arm64.tar.gz
sudo mv richdocumentscode_arm64 www/nextcloud/apps
thay quyền truy cập: sudo chown -R www-data:www-data www/nextcloud/apps/richdocumentscode_arm64
Nâng lên vùng nhớ: sdo nano /etc/php/7.4/fpm/php.ini
Bấm ctrl+w tìm: memory_limit cho thành 1G; upload_max_filesize thì 1G
Vào sudo nano /etc/php/7.4/fpm/pool.d/www.conf chỉnh xóa ; trước các dòng:
;env[HOSTNAME] = $HOSTNAME ;env[PATH] = /usr/local/bin:/usr/bin:/bin ;env[TMP] = /tmp ;env[TMPDIR] = /tmp ;env[TEMP] = /tmp
clear_env = no
Sau đó: systemctl restart php7.4-fpm.service && systemctl restart nginx
thay đổi trong nginx: location ~ .php(?:$|/) { # Required for legacy support rewrite ^/(?!index|remote|public|cron|core/ajax/update|status|oc[ms]/v[12]|updater/.+|oc[ms]-provider/.+|.+/richdocumentscode_arm64/proxy) /index.php$request_uri; fastcgi_split_path_info ^(.+?.php)(/.*)$; set $path_info $fastcgi_path_info; try_files $fastcgi_script_name =404; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param PATH_INFO $path_info; # fastcgi_param HTTPS on; fastcgi_param modHeadersAvailable true; # Avoid sending the security headers twice fastcgi_param front_controller_active true; # Enable pretty urls fastcgi_pass php-handler; fastcgi_intercept_errors on; fastcgi_request_buffering off; fastcgi_max_temp_file_size 0; }
Cập nhật có thể được thực hiện như thế này:
sudo -u www-data php -d memory_limit=512M ./occ app:update --all
Xem danh sách app:sudo -u www-data php occ app:list
Xóa app dùng lệnh:sudo -u www-data php occ app:remove richdocuments
https://docs.nextcloud.com/server/20/admin_manual/configuration_server/occ_command.html
In case you use the ARM64 CODE at System like Raspi, you need to use the following line for nginx:
location ~ ^/(?:index|apc|remote|public|cron|core/ajax/update|status|ocs/v[12]|updater/.+|oc[ms]-provider/.+|.+/richdocumentscode/proxy|.+/richdocumentscode_arm64/proxy|).php(?:$|/) { Nếu chưa được xem lại port: http://127.0.0.1:9980
Tạo bộ nhớ trên máy cục bộ. Cài thêm các sudo apt-get install redis-server php-redis -y
Kiểm tra nó chạy chưa: ps ax | grep redis
Vào thư mục www/nextcloud/config thêm nội dung vào file config.php:
‘memcache.locking’ => ‘\OC\Memcache\Redis’,
‘memcache.distributed’ => ‘\OC\Memcache\Redis’,
‘memcache.local’ => ‘\OC\Memcache\Redis’,
‘redis’ => array ( ‘host’ => ‘localhost’, ‘port’ => 6379, ),
Đồng thời thêm dòng cấu hình số điên thoại VN: ‘default_phone_region’ => ‘vi’,
Xong, lưu lại vào web Admistrator overview để xem kết quả.
Kích hoạt bộ nhớ đệm PHP
nano /etc/php/7.4/fpm/conf.d/10-opcache.ini
Sau đó, ở cuối tệp thêm cấu hình sau::
opcache.memory_consumption=256
opcache.interned_strings_buffer=64
opcache.max_accelerated_files=32531
opcache.validate_timestamps=0
opcache.enable_cli=1
systemctl restart php7.4-fpm.service
Dùng Nextcloud trên Raspberry Pi, gắn bộ nhớ ngoài
NextCloudPi là phiên bản thiết kế để chạy trên Raspberry Pi 3 hoặc 4. Trước tiên, hãy tải xuống file image hệ điều hành NextCloudPi mới nhất từ repo GitHub. Chọn phiên bản cho Raspberry Pi. Sau khi tải xuống, hãy giải nén file bằng công cụ giải nén, bạn sẽ có một thư mục chứa file IMG.
Sử dụng ứng dụng Raspberry Pi Imager để flash file (image hệ điều hành) này vào thẻ nhớ microSD đã lắp – thẻ có dung lượng 8GB trở lên.
Đặt thẻ nhớ microSD vào Raspberry Pi và bật nguồn. Sau vài giây hiển thị trình tự khởi động, bạn sẽ được nhắc đăng nhập. Tên người dùng mặc định là pi và mật khẩu là raspberry. Nó sẽ hỏi có cần thay đổi tên user và password luôn lúc này.
Nhập sudo raspi-config và chọn 2 Network Options, sau đó chọn N2 Wireless LAN. Chọn quốc gia, theo sau là SSID (tên) và mật khẩu của router. Chọn Finish để quay lại dòng lệnh.
Để khám phá địa chỉ IP của Raspberry Pi, hãy nhập:
ip addr
Ghi lại địa chỉ inet dưới wlan0: Đây là địa chỉ IP của Raspberry Pi. Một số router sẽ dành cùng một địa chỉ cho nó mỗi khi nó khởi động. Nếu không, bạn sẽ muốn thiết lập một địa chỉ IP tĩnh cho Raspberry Pi của mình.
Tại thời điểm này, bạn cũng có thể bật SSH để truy cập từ xa từ một máy tính khác nếu không muốn giữ Raspberry Pi của mình kết nối với màn hình trong khi tiếp tục thiết lập. Để làm như vậy, sử dụng lệnh:
sudo service ssh start
Từ dòng lệnh hoặc terminal của một máy tính khác, sau đó bạn có thể nhập ssh pi@[địa chỉ IP của Pi] để truy cập dòng lệnh của Raspberry Pi.
4. Kích hoạt giao diện web Nextcloud
Nhập sudo ncp-config và chọn Yes nếu được nhắc cập nhật. Trong menu tiếp theo, chọn CONFIG và sử dụng mũi tên xuống để cuộn xuống cuối danh sách.
Tại đây chọn nc-webui, sau đó xóa no và gõ yes. Nhấn Enter rồi nhấn phím bất kỳ. Chọn Back and Finish để thoát khỏi công cụ cấu hình.
5. Kích hoạt và cấu hình Nextcloud
Trong trình duyệt web trên một máy tính khác, hãy nhập địa chỉ https://[địa chỉ IP của Pi]:4443.
Nếu bạn thấy cảnh báo rằng kết nối của bạn không riêng tư hoặc an toàn, hãy chọn bỏ qua cảnh báo đó (bằng cách chọn Advanced trong Chrome hoặc Firefox) và tiếp tục truy cập trang web.
Bạn sẽ được nhắc đăng nhập. Tên người dùng mặc định là ncp và mật khẩu là ownyourbits.
bạn cần sao chép và dán vào tài liệu để lưu giữ an toàn. Đầu tiên là mật khẩu cho web panel NextCloudPi cho phép bạn cấu hình cài đặt máy chủ. Thứ hai là dành cho chính giao diện web Nextcloud. Bạn có thể thay đổi các mật khẩu này sau nếu muốn.
Với những mật khẩu được ghi lại, hãy chọn Activate. Sau vài giây, bạn sẽ được nhắc đăng nhập vào web panel NextCloudPi. Tuy nhiên, bây giờ hãy bỏ qua điều đó và đăng nhập vào giao diện web Nextcloud.
Truy cập web Nextcloud https://[địa chỉ IP của Pi] (không có hậu tố :4443) và đăng nhập bằng tên người dùng ncp và mật khẩu thứ hai mà bạn đã ghi lại.
Sau khi tiếp tục qua màn hình chào mừng, bạn sẽ thấy bảng điều khiển web chính. Đây là máy chủ đám mây Raspberry Pi 4 của riêng bạn!
trên cùng bên phải để truy cập menu drop-down với các tùy chọn cho Settings (toàn bộ – cá nhân và quản trị viên), Users (bạn có thể thêm và quản lý người dùng) và Apps để cài đặt (chẳng hạn như bộ ứng dụng office Collabora Online và máy chủ ARM64).
Trong thanh công cụ trên cùng là các biểu tượng cho những phần như Files, Photos, Contacts, Calendar và Tasks. Ngoài ra còn có một biểu tượng NextCloudPi đưa bạn đến web panel. Nhấp vào nó và bạn sẽ được nhắc đăng nhập bằng tên người dùng ncp và mật khẩu đầu tiên bạn đã ghi lại.
Một trình hướng dẫn sẽ xuất hiện với các tùy chọn để cấu hình bộ lưu trữ USB và quyền truy cập bên ngoài qua Internet.
7. Thêm bộ nhớ ngoài USB
Thẻ nhớ microSD của bạn sẽ có dung lượng hạn chế, vì vậy tốt nhất bạn nên thêm bộ lưu trữ USB cho máy chủ Nextcloud Raspberry Pi của mình. Kết nối thiết bị lưu trữ của bạn với một trong các cổng USB của Raspberry Pi.
Trước khi tiếp tục, bạn cần tạo một thư mục cho nó trong dòng lệnh trên Raspberry Pi (hoặc qua SSH). Nhập lệnh sau:
sudo mkdir /media/USBdrive
Truy cập web panel NextCloudPi trong trình duyệt web trên máy tính khác của bạn. Trong trình hướng dẫn xuất hiện (bạn có thể mở nó bằng biểu tượng cây đũa phép ở thanh công cụ trên cùng), chọn USB Configuration. Trả lời Yes cho câu hỏi đầu tiên, sau đó nhấp vào Continue.
Sau đó, bạn sẽ được hỏi có muốn format USB không. Nếu bạn chắc chắn không có file quan trọng nào trên đó mà bạn muốn giữ lại, hãy chọn Format USB. Cuối cùng, nhấn Move data to USB.
Bạn có thể truy cập trang tổng quan của nó bằng trình duyệt web trên thiết bị khác. Thậm chí còn có một ứng dụng Nextcloud dành cho iOS và Android mà bạn có thể sử dụng.
Chạy trên Docker
Tạo một thư mục /opt/NextCloud và file docker-compose.yaml
version: '2'
volumes:
nextcloud:
db:
services:
db:
image: mariadb
restart: always
command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW --innodb-file-per-table=1 --skip-innodb-read-only-compressed
volumes:
- db:/var/lib/mysql
environment:
- MYSQL_ROOT_PASSWORD=Bund7zXeVz7YnFknLGcnUjHtk #change this
- MYSQL_PASSWORD=HFdMe9rn5kf7A8Pqc8v86Pre5 #change this
- MYSQL_DATABASE=nextcloud
- MYSQL_USER=nextcloud
app:
image: nextcloud
restart: always
ports:
- 8888:80
links:
- db
volumes:
- nextcloud:/var/www/html
environment:
- MYSQL_PASSWORD=HFdMe9rn5kf7A8Pqc8v86Pre5 #change this to match the mysql_password above
- MYSQL_DATABASE=nextcloud
- MYSQL_USER=nextcloud
- MYSQL_HOST=db
- TZ=Europe/Copenhagen
docker-compose up -d
Vào trình duyệt và tiến hành thiết lập Nextcloud http://ip:8888
Thêm web-based office
Bạn có thể mở trực tiếp các file word, excel, … trực tiếp trên NextCloud bằng dùng 1trong 2 ứng Collabora và OnlyOffice. Bạn vào phần app để install và enable plugin NextCloud office của collabora hoặc onlyofffice. Collabora thì cho chạy internal và ko có ssl.
https://techoverflow.net/2021/08/19/how-to-run-collabora-office-for-nextcloud-using-docker-compose/
Với onlyoffice thì các bạn bắt buộc phải có ssl để có thể integrate với Nextcloud được.
Cài tất cả trong 1
https://nextcloud.com/blog/how-to-install-the-nextcloud-all-in-one-on-linux/
https://nextcloud.com/blog/your-guide-to-the-nextcloud-all-in-one-on-windows-10-11/
docker run --sig-proxy=false --name nextcloud-aio-mastercontainer --restart always --publish 80:80 --publish 8080:8080 --publish 8443:8443 --volume nextcloud_aio_mastercontainer:/mnt/docker-aio-config --volume //var/run/docker.sock:/var/run/docker.sock:ro -e NEXTCLOUD_DATADIR="/run/desktop/mnt/host/c/ncdata" nextcloud/all-in-one:latest
Đảm bảo điều chỉnh /run/desktop/mnt/host/c/ncdata
theo nhu cầu của bạn. Đường dẫn này tương đương với C:ncdata
trên máy chủ Windows của bạn nên bạn cần chỉnh đường dẫn cho phù hợp. Gợi ý: đường dẫn bạn nhập cần bắt đầu bằng /run/desktop/mnt/host/
. Nối vào đó vị trí chính xác trên máy chủ lưu trữ windows của bạn, ví dụ c/ncdata
: tương đương với C:ncdata
.
Sau đó, bạn có thể mở giao diện AIO tại https://localhost:8080
. Bạn cần chấp nhận chứng chỉ Tự ký.
Nhấp vào Open Nextcloud AIO login
và dán mật khẩu của bạn: mannish sullen closure paging operator groin passing budding
Nếu quên pass, dùng câu lệnh
sudo cat /var/lib/docker/volumes/nextcloud_aio_mastercontainer/_data/data/configuration.json | grep password
Mở cmd nhập : docker exec nextcloud-aio-mastercontainer grep password /mnt/docker-aio-config/data/configuration.json
Tiếp theo, nhập miền công khai mà bạn đã thiết lập trước khi bắt đầu hướng dẫn này. Giao diện sẽ giúp bạn tìm ra các bước chính xác. (Thiết lập DDNS cho miền của bạn để trỏ đến IP công cộng của bạn, chuyển tiếp ít nhất các cổng 443/tcp và 3478/udp và 3478/tcp tới máy Windows của bạn.)
time zones=Asia/Ho_Chi_Minh
Sau khi bạn đã thiết lập chính xác, nó sẽ cho phép bạn chuyển sang bước tiếp theo, nơi bạn có thể định cấu hình các addon tùy chọn mong muốn và múi giờ, đồng thời nhấp vào Start containers
để tải xuống và khởi động chúng.
Bây giờ bạn sẽ thấy một công cụ quay vòng sẽ mất một lúc (tùy thuộc vào tốc độ internet của bạn, khoảng 10 phút trở lên). Giờ đây, bạn có thể mở phiên bản Nextcloud mới của mình và đăng nhập bằng thông tin đăng nhập quản trị viên đã cho.
Bạn cũng nên mở Backup and restore
phần gõ trong một đường dẫn như ví dụ /run/desktop/mnt/host/c/backup
và gửi nó. Đường dẫn này tương đương với C:backup
trên máy chủ Windows của bạn nên bạn cần chỉnh đường dẫn cho phù hợp. Gợi ý: đường dẫn bạn nhập cần bắt đầu bằng /run/desktop/mnt/host/
. Nối vào đó vị trí chính xác trên máy chủ lưu trữ windows của bạn, ví dụ c/backup
: tương đương với C:backup
.
Đó là nó! Bây giờ mọi thứ đã được thiết lập và sẵn sàng để sản xuất.
Giữ dữ liệu của bạn, thông qua AIO mới của bạn!
Lưu ý: Hệ thống chạy yêu cầu ram 23G dể duy trì
Ứng dụng chạy ngầm Vmmen 14.88,1 MB CPU thì thấp 1.3%, Ethernet receive 6Mbps.