Ինչպես տեղադրել Nextcloud-ը Ubuntu 24.04 սերվերի վրա


Այս էջում

  1. Նախադրյալներ
  2. Կախվածությունների տեղադրում
  3. PHP-ի կարգավորում
  4. MariaDB սերվերի կարգավորում
  5. HTTP և HTTPS պորտերի բացում
  6. Ներբեռնվում է Nextcloud-ը
  7. Nextcloud-ի համար Apache վիրտուալ հոսթի կարգավորում
  8. Nextcloud-ի տեղադրում
  9. Եզրակացություն

Nextcloud-ը բաց կոդով ծրագրաշար է հանրային և մասնավոր ֆայլերի պահպանման համար: Այն թույլ է տալիս ստեղծել ինքնակառավարվող ծառայություններ, ինչպիսիք են Dropbox-ը, Google Drive-ը կամ Mega.nz-ը: Սկզբում այն ստեղծվել է Owncloud-ի բնօրինակ մշակող Ֆրենկ Կարլիչչեկի կողմից։ 2016-ին նա բացեց Owncloud նախագիծը և ստեղծեց նոր նախագիծ նոր անունով «Nextcloud. »

Nextcloud նախագիծը արագորեն զարգանում է և դառնում է ավելին, քան ֆայլերի հոսթինգի ծրագրակազմը: Այն ավելի շատ նման է ֆայլերի համաժամացման և բովանդակության համագործակցության հարթակի: Բազմաթիվ հավելումներով ապահովված՝ Nextcloud-ը դարձել է համագործակցության այնպիսի հզոր ծրագիր: Դուք կարող եք տեղադրել պլագիններ նախագծերի կառավարման, վիդեո կոնֆերանսների, համատեղ խմբագրման, նշումներ անելու, էլփոստի հաճախորդի և այլնի համար:

Այս ձեռնարկը սովորեցնում է ձեզ, թե ինչպես տեղադրել Nextcloud-ը Ubuntu 24.04 սերվերի վրա: Դուք կտեղադրեք Nextcloud-ը LAMP Stack-ով, այնուհետև կապահովեք Netxcloud-ը HTTPS-ով Certbot-ի և Letsencrypt-ի միջոցով:

Նախադրյալներ

Նախքան սկսելը, համոզվեք, որ ունեք հետևյալը.

  • Ubuntu 24.04 սերվեր
  • Ոչ արմատական օգտվող, ադմինիստրատորի արտոնություններով
  • Դոմենի անուն, որը մատնանշված է սերվերի IP հասցեին
  • UFW (Uncomplicated Firewall) գործարկվում և աշխատում է

Կախվածությունների տեղադրում

Այս բաժնում դուք կտեղադրեք փաթեթային կախվածություններ Nextcloud-ի համար: Դուք կգործարկեք Nextcloud-ը LAMP Stack-ով, օգտագործելով curl՝ Nextcloud-ի սկզբնական կոդը ներբեռնելու համար, այնուհետև՝ օգտագործելով Certbot-ը և Letsencrypt-ը՝ հաջորդ cloud-ը HTTPS-ով ապահովելու համար:

Նախքան սկսելը, գործարկեք ստորև նշված հրամանը՝ ձեր Ubuntu փաթեթի ինդեքսը թարմացնելու համար

sudo apt update

Այժմ տեղադրեք Nextcloud-ի կախվածությունները հետևյալ apt install հրամանով։ Սա կտեղադրի LAMP Stack-ը (Linux, Apache, MySQL/MariaDB և PHP), curl, unzip, ImageMagick և certbot:

sudo apt install apache2 mariadb-server php php-curl php-cli php-mysql php-gd php-common php-xml php-json php-intl php-pear php-imagick php-dev php-common php-mbstring php-zip php-soap php-bz2 php-bcmath php-gmp php-apcu libmagickcore-dev php-redis php-memcached curl unzip imagemagick certbot python3-certbot-apache

Տեղադրումը հաստատելու համար մուտքագրեք Y:

Տեղադրվելուց հետո ստուգեք Apache վեբ սերվերի կարգավիճակը՝ օգտագործելով ստորև նշված հրամանը: Դուք կտեսնեք, որ Apache վեբ սերվերը աշխատում և միացված է:

sudo systemctl is-enabled apache2
sudo systemctl status apache2

Այժմ ստուգեք MariaDB սերվերի կարգավիճակը հետևյալ հրամանով. Դուք պետք է ստանաք նմանատիպ արդյունք, քանի որ MariaDB-ն աշխատում է:

sudo systemctl is-enabled mariadb
sudo systemctl status mariadb

Ի վերջո, գործարկեք ստորև նշված հրամանը՝ ձեր համակարգի PHP տարբերակը ստուգելու համար: Դուք կտեսնեք, որ PHP 8.3-ը տեղադրված է:

php -v

PHP-ի կարգավորում

Կախվածությունները տեղադրելուց հետո դուք կկարգավորեք PHP-ն՝ խմբագրելով php.ini ֆայլը: Դուք կարող եք հարմարեցնել PHP-ի կոնֆիգուրացիան ըստ անհրաժեշտության որոշ ընտրանքների համար, ինչպիսիք են հիշողության առավելագույն սահմանաչափը և բեռնման առավելագույն չափը:

Նանո խմբագրիչով բացեք /etc/php/8.3/apache2/php.ini ֆայլը:

sudo nano /etc/php/8.3/apache2/php.ini

Փոխեք լռելյայն կոնֆիգուրացիան հետևյալով և համոզվեք, որ կարգավորել եք memory_limit-ը ձեր առավելագույն հիշողության հետ, իսկ date.timezone-ը՝ ձեր սերվերի գտնվելու վայրի/ժամային գոտում:

date.timezone = Europe/Amsterdam
memory_limit = 512M
upload_max_filesize = 500M
post_max_size = 600M
max_execution_time = 300
file_uploads = On
allow_url_fopen = On
display_errors = Off
output_buffering = Off

Ավարտելուց հետո պահեք ֆայլը և դուրս եկեք:

Այժմ գործարկեք ստորև ներկայացված systemctl հրամանը՝ Apache վեբ սերվերը վերագործարկելու և ձեր նոր PHP կոնֆիգուրացիան կիրառելու համար:

sudo systemctl restart apache2

MariaDB սերվերի կարգավորում

Այժմ, երբ դուք կարգավորել եք PHP-ն, դուք կկարգավորեք MariaDB սերվերը և կստեղծեք նոր տվյալների բազա և օգտվող Nextcloud-ի համար: Դուք կապահովեք MariaDB-ն mariadb-secure-installation կոմունալով, այնուհետև կստեղծեք նոր տվյալների բազա և օգտվող mariadb հաճախորդի միջոցով:

MariaDB սերվերը պաշտպանելու համար ստորև գործարկեք mariadb-secure-installation հրամանը:

sudo mariadb-secure-installation

Գործընթացի ընթացքում ձեզ կհարցնեն հետևյալ MariaDB սերվերի կազմաձևերի մասին.

  • Սեղմեք ENTER, երբ հարցնում են MariaDB արմատային գաղտնաբառը:
  • Մուտքագրեք n, երբ հարցնում են unix_socket վավերացման մեթոդի մասին:
  • Մուտքագրեք Y՝ MariaDB արմատային օգտվողի համար նոր գաղտնաբառ ստեղծելու համար: Այնուհետև մուտքագրեք նոր գաղտնաբառը և կրկնեք:
  • Մուտքագրեք Y՝ լռելյայն անանուն օգտվողին MariaDB-ից հեռացնելու համար:
  • Այնուհետև նորից մուտքագրեք Y՝ MariaDB արմատային օգտվողի համար հեռակա մուտքն անջատելու համար:
  • Մուտքագրեք Y՝ MariaDB-ից կանխադրված տվյալների բազայի թեստը հեռացնելու համար:
  • Վերջապես, կրկին մուտքագրեք Y՝ աղյուսակի արտոնությունները վերաբեռնելու և փոփոխությունները կիրառելու համար:

Հաջորդը, գործարկեք mariadb հաճախորդի հրամանը ստորև՝ MariaDB սերվեր մուտք գործելու համար: Մուտքագրեք ձեր արմատային գաղտնաբառը, երբ պահանջվում է:

sudo mariadb -u root -p

Գործարկեք հետևյալ հարցումները՝ nextclouddb նոր տվյալների բազա ստեղծելու համար՝ nextcloud@localhost օգտվող՝ passw0rd գաղտնաբառով: Դուք կարող եք հարմարեցնել տվյալների բազայի մանրամասները ձեր տեղեկատվության հետ:

CREATE DATABASE nextclouddb;
CREATE USER nextcloud@localhost IDENTIFIED BY 'passw0rd';
GRANT ALL PRIVILEGES ON nextclouddb.* to nextcloud@localhost;
FLUSH PRIVILEGES;

Այժմ գործարկեք ստորև ներկայացված հարցումը՝ համոզվելու համար, որ օգտվողը nextcloud@localhost կարող է մուտք գործել տվյալների բազա nextclouddb:

SHOW GRANTS FOR nextcloud@localhost;

Դուք կտեսնեք հետևյալ արդյունքը.

MariaDB սերվերից դուրս գալու համար մուտքագրեք quit:

HTTP և HTTPS պորտերի բացում

Այս բաժնում դուք կբացեք HTTP և HTTPS նավահանգիստները՝ թույլատրելու մուտքը Nextcloud: Այսպիսով, դուք պետք է համոզվեք, որ UFW-ն կազմաձևված և միացված է ձեր Ubuntu սերվերում:

Ubuntu-ում և՛ HTTP, և՛ HTTPS պորտերը բացելու համար կատարեք ստորև նշված ufw հրամանը: Apache Full պրոֆիլով դուք թույլ կտաք միացումներ HTTP և HTTPS նավահանգիստներին:

sudo ufw allow 'Apache Full'
sudo ufw reload

Այժմ ստուգեք UFW-ի ցուցակի կանոնները ստորև նշված հրամանով: Համոզվեք, որ Apache Full պրոֆիլը միացված է ձեր Ubuntu սերվերում:

sudo ufw status

Ներբեռնվում է Nextcloud-ը

Այժմ, երբ դուք կազմաձևել եք PHP, MariaDB և UFW, դուք կներբեռնեք Nextcloud աղբյուրի կոդը և կստեղծեք փաստաթղթի արմատային գրացուցակը Nextcloud-ի տեղադրման համար:

Գնացեք /var/www գրացուցակ և ներբեռնեք Nextcloud աղբյուրի կոդը ստորև բերված curl հրամանով:

cd /var/www/
sudo curl -o nextcloud.zip https://download.nextcloud.com/server/releases/latest.zip

Ներբեռնվելուց հետո գործարկեք ներքևում գտնվող unzip հրամանը՝ Nextcloud-ը հանելու համար: Սա կսահմանի Netxcloud արմատային գրացուցակը /var/www/nextcloud:

sudo unzip nextcloud.zip

Այժմ գործարկեք ստորև նշված հրամանը՝ /var/www/nextcloud գրացուցակի սեփականությունը www-data օգտվողին փոխելու համար:

sudo chown -R www-data:www-data /var/www/nextcloud

Nextcloud-ի համար Apache վիրտուալ հոսթի կարգավորում

Nextcloud-ը ներբեռնելուց հետո դուք կստեղծեք նոր Apache վիրտուալ հոսթ Nextcloud-ի համար: Այնուհետև դուք կստեղծեք SSL վկայագրեր և կապահովեք Nextcloud-ը HTTPS-ով:

Ստեղծեք նոր Apache վիրտուալ հոսթի կոնֆիգուրացիա /etc/apache2/sites-available/nextcloud.conf հետևյալ նանո խմբագրիչով:

sudo nano /etc/apache2/sites-available/nextcloud.conf

Տեղադրեք ստորև նշված կոնֆիգուրացիան և համոզվեք, որ փոխեք տիրույթի անունը nextcloud.howtoforge.local:

<VirtualHost *:80>
 ServerName nextcloud.howtoforge.local
 DocumentRoot /var/www/nextcloud/
 # log files
 ErrorLog /var/log/apache2/nextclouds.howtoforge.local-error.log
 CustomLog /var/log/apache2/nextcloud.howtoforge.local-access.log combined
 <Directory /var/www/nextcloud/>
 Options +FollowSymlinks
 AllowOverride All
 <IfModule mod_dav.c>
 Dav off
 </IfModule>
 SetEnv HOME /var/www/nextcloud
 SetEnv HTTP_HOME /var/www/nextcloud
 </Directory>
</VirtualHost>

Ավարտելուց հետո պահեք ֆայլը և դուրս եկեք խմբագրիչից:

Այժմ գործարկեք ստորև նշված հրամանը՝ ակտիվացնելու վիրտուալ հոսթ ֆայլը nextcloud.conf և ստուգեք ձեր Apache-ի շարահյուսությունը: Եթե ունեք Apache-ի ճիշտ շարահյուսություն, դուք կստանաք ելք Սինտաքսը լավ է:

sudo a2ensite nextcloud.conf
sudo apachectl configtest

Հաջորդը, գործարկեք ներքևում գտնվող systemctl հրամանը՝ Apache վեբ սերվերը վերագործարկելու և ձեր փոփոխությունները կիրառելու համար:

sudo systemctl restart apache2

Apache-ն վերագործարկվելուց հետո գործարկեք ստորև բերված certbot հրամանը՝ SSL վկայագրեր ստեղծելու և ձեր Nextcloud տեղադրումը HTTPS-ով ապահովելու համար: Համոզվեք, որ փոխեք տիրույթի անունը և էլփոստի հասցեն ձեր տեղեկություններով:

sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email [email  -d nextcloud.howtoforge.local

Nextcloud-ի տեղադրում

Բացեք ձեր վեբ զննարկիչը և այցելեք https://nexcloud.howtoforge.local/: Եթե ձեր կազմաձևումը հաջող է, դուք կտեսնեք Nextcloud-ի տեղադրման էջը:

Nextcloud-ի տեղադրման էջում կարգավորեք հետևյալը.

  • Մուտքագրեք ձեր ադմինիստրատորի օգտատերը և գաղտնաբառը Nextcloud-ի համար
  • Ընտրեք պահեստավորման ուղին որպես լռելյայն գրացուցակ
  • Մուտքագրեք Nextcloud տվյալների բազայի մանրամասները, որոնք դուք ստեղծել եք
  • Սեղմեք Տեղադրել՝ տեղադրումը սկսելու համար:

Այժմ կարող եք տեղադրել որոշ Nextcloud հավելվածներ կամ սեղմել Բաց թողնել:

Գործընթացն ավարտվելուց հետո կտեսնեք հետևյալ էջը.

Եզրակացություն

Շնորհավորում եմ: Դուք ավարտել եք Nextcloud-ի տեղադրումը Ubuntu 24.04 սերվերի վրա: Nextcloud-ը աշխատում և աշխատում է LAMP Stack-ով և ապահովված է HTTPS-ով Certbot-ի և Letsencrypt-ի միջոցով: Այժմ կարող եք ստեղծել նոր օգտատերեր և ֆայլեր վերբեռնել ձեր Nextcloud-ում, կամ կարող եք ավելացնել քեշավորման նոր մեթոդներ՝ դրա կատարումը բարելավելու համար: