NextCloud, похожее на Dropbox решение, для самостоятельного обмена файлами и синхронизации. Установка NextCloud 14 на Ubuntu тривиальна. Если вы хотите иметь хранилище для бэкапа, синхронизацию своих файлов или альтернативу Google календаря, то это руководство для вас.
Что такое NextCloud? Это как «облако»?
Если вы наткнулись на эту статью случайно, и не знаете что такое NextCloud, вот ответ, где объясняются его основные особенности и преимущества/недостатки.
В этой статье мы рассмотрим установку сервера (не клиента). Если вас интересует установка клиента, пройдите по этой ссылке.
Шаг 1: установка программного обеспечения
Я не несу абсолютно никакой ответственности за то, что вы делаете с вашей машиной; используйте этот учебник в качестве руководства и помните, все что вы делаете, вы делаете на свой страх и риск.
Первый шаг для того, чтобы установить NextCloud 14 — установить веб-сервер. Я предлагаю вам использовать Ubuntu 18.04 или выше с PHP7. PHP7 приносит много улучшений по сравнению с прошлыми версиями. Вам будет нужен root доступ во время этой процедуры. Следующая процедура установки Apache в качестве веб-сервера. Вводите команды одну за другой, чтобы избежать ошибок!
Если вы хотите установить PHP 7.1 или PHP 7.2, просто замените в командах 7.0 на 7.1 или 7.2.
Пример: Предположим, вы хотите установить PHP 7.2, тогда пакет php7.0-gd станет php7.2-gd.
Откройте терминал и введите следующие команды:
# apt-get update
# apt-get upgrade
# apt-get install apache2 libapache2-mod-php7.0 bzip2
# apt-get install php7.0-gd php7.0-json php7.0-mysql php7.0-curl php7.0-mbstring
# apt-get install php7.0-intl php7.0-mcrypt php-imagick php7.0-xml php7.0-zip
Шаг 2: выбор базы данных
Теперь, когда вы настроили среду, осталось только выбрать базу данных, которая будет использоваться NextCloud. У вас есть три варианта:
- Базы данных SQLite: один файл базы данных. Это предлагается только для небольших установок, так как это будет замедлять NextCloud.
- MariaDB/MySQL: это популярные с открытым исходным кодом базы данных, особенно среди веб-разработчиков. Это рекомендуемый выбор.
- PostgreSQL: популярная база данных корпоративного класса. Более сложная, чем MySQL/MariaDB.
Выберите то, что знаете лучше всего. Если затрудняетесь выбрать, то MariaDB/MySQL будет лучшим решением.
Установите программное обеспечение:
# apt-get install mariadb-server php-mysql
Или, если вы предпочитаете MySQL:
# apt-get install mysql-server php-mysql
Во время установки вам будет предложено выбрать пароль. Если не будет предложено выбрать пароль, по умолчанию он будет пустым. (Это потенциально небезопасно, измените его!)
Теперь нужно войти в MariaDB/MySQL сервер (вам будет предложено ввести пароль, который вы установили)
$ mysql -u root -p
Теперь, создаем базу данных:
CREATE DATABASE nextcloud;
Теперь нужно создать пользователя, который будет использоваться для подключения к базе данных:
CREATE USER 'nc_user'@'localhost' IDENTIFIED BY 'YOUR_PASSWORD_HERE';
Последний шаг — предоставить привилегии для нового пользователя:
GRANT ALL PRIVILEGES ON nextcloud.* TO 'nc_user'@'localhost';
FLUSH PRIVILEGES;
Когда вы закончите, нажмите Ctrl-D и для выхода.
Шаг 3: Установите NextCloud
Последний шаг, установка NextCloud, настройка и запуск.
# cd /var/www
# wget https://download.nextcloud.com/server/releases/latest-14.tar.bz2 -O nextcloud-14-latest.tar.bz2
# tar -xvjf nextcloud-14-latest.tar.bz2
# chown -R www-data:www-data nextcloud
# rm nextcloud-14-latest.tar.bz2
Теперь нам нужно создать новый файл /etc/apache2/sites-available/nextcloud.conf . Используйте любой редактор в котором вы чувствуете себя комфортно. Например nano. Добавьте следующие строки:
Alias /nextcloud "/var/www/nextcloud/"
<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>
После этого пришло время, чтобы включить новый сайт и моды
Apache, которые нужны NextCloud.
# a2ensite nextcloud
# a2enmod rewrite headers env dir mime
# systemctl restart apache2
Шаг 4: Настройка брандмауэра
Этот шаг необходим, когда ваш брандмауэр включен. Если ваш брандмауэр включен, вы не сможете получить доступ к своему NextCloud 14. А если он не включен, у вас не должно быть никаких проблем, и вы можете просто пропустить этот шаг.
Имейте в виду, включенный брандмауэр является хорошей практикой безопасности.
Чтобы открыть порты, необходимые NextCloud 14 выполните следующие действия:
# ufw allow http
# ufw allow https
Шаг 5: Настройка
Откройте браузер, введите в адресной строке http://YOUR_IP_ADDRESS/nextcloud/ и нажмите Enter.
Выберите имя администратора и пароль, затем вы можете выбрать папку Data, но если вы не знаете, что вы делаете, лучше всего если вы оставить значение по умолчанию. Затем нажмите на кнопку «хранилища и базы данных» выберите базу данных которую создали на Шаге 2. Заполните все поля, и если вы следовали все шаги правильно, вы должны видеть следующий экран:
На этом всё !