- Certbotをインストールしてhttps化が完了済み
- サブドメインでWebサーバーが使えるように設定済み
- データベース(MariaDB)も設定済み
となると、やりたくなるのはセルフホストなわけです。
今回はセルフホストといえば!なくらい有名なNextcloudの環境を用意してみます。
準備
必要なモジュールをインストールしておきます。
# インストール済み
sudo apt install -y apache2
sudo apt install -y mariadb-server
# 追加でインストール
sudo apt install -y libapache2-mod-php
sudo apt install -y php-gd
sudo apt install -y php-mysql
sudo apt install -y php-curl
sudo apt install -y php-mbstring
sudo apt install -y php-intl
sudo apt install -y php-gmp
sudo apt install -y php-bcmath
sudo apt install -y php-xml
sudo apt install -y php-imagick
sudo apt install -y php-zip
sudo apt install -y unzip
MariaDBでデータベースを作成
root/<パスワードなし>で、MariaDBへログイン。
sudo mariadb -u root -p
コンソールで以下の作業を実施。
- ユーザー作成/パスワードの設定
- データベースの作成
- 権限設定
CREATE USER '<ユーザー名>'@'localhost' IDENTIFIED BY '<パスワード>';
CREATE DATABASE IF NOT EXISTS <データベース名> CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
GRANT ALL PRIVILEGES ON <データベース名>.* TO 'ユーザー名'@'localhost';
FLUSH PRIVILEGES;
EXIT;
Nextcloudのインストール
下記より最新バージョンを確認します。2024/01時点では28.0.1が最新のようです。
Nextcloud server changelog
We recommend you follow our release channels to always have the latest and most secure Nextcloud server version which fits your needs.
任意のディレクトリにダウンロードして展開。
cd /tmp
wget https://download.nextcloud.com/server/releases/nextcloud-28.0.1.zip
wget https://download.nextcloud.com/server/releases/nextcloud-28.0.1.zip.sha256
sha256sum -c nextcloud-28.0.1.zip.sha256 < nextcloud-28.0.1.zip
sudo unzip nextcloud-28.0.1.zip
sudo cp -r nextcloud /var/www
sudo chown -R www-data:www-data /var/www/nextcloud
Apacheの設定
今後アプリを増やすことも考えて、今回はサブドメイン直下ではなくサブディレクトリで運用します。
- ×:https://sub.domain.com
- ○:https://sub.domain.com/nextcloud
そのため、apacheの設定ファイルを追加します。
sudo nano /etc/apache2/sites-available/nextcloud.conf
Alias /nextcloud "/var/www/nextcloud/"
<Directory /var/www/nextcloud/>
Require all granted
AllowOverride All
Options FollowSymLinks MultiViews
<IfModule mod_dav.c>
Dav off
</IfModule>
</Directory>
設定ファイルを有効化。
sudo a2ensite nextcloud.conf
必要なモジュールを有効化。
sudo a2enmod rewrite
sudo a2enmod headers
sudo a2enmod env
sudo a2enmod dir
sudo a2enmod mime
apacheを再起動。
sudo systemctl restart apache2
Nextcloudの初期設定
設定したURLへアクセスすると、初期設定画面が表示されます。
https://sub.domain.com/nextcloud
指示に従って初期設定すれば完了!
コメント