GNU/Linux >> Linux の 問題 >  >> Ubuntu

Ubuntu20.04とLEMPにNextCloudをインストールして設定する方法

Nextcloudは、ファイルホスティングサービスを作成および使用するためのクライアントサーバーソフトウェアのオープンソーススイートです。これは、DropboxやGoogleドライブなどに似た無料のセルフホストクラウドストレージソリューションです。Nextcloudを使用すると、高価な代替手段について心配する必要がなく、独自のファイルをホストするため、心配する必要もありません。プライバシーや誰かがあなたのデータを収集することについて。

NextCloudは、クラウド内のプライベートホームサーバーまたは仮想プライベートサーバーにインストールできます。その後、ファイルをアップロードして、ローカルデスクトップ、ラップトップ、さらにはスマートフォンに同期することができます。このようにして、データを完全に制御できます。

NextCloudの機能

  • NextCloudには、Linux、Mac OS、Windows、Android、IOS用の同期クライアントがあります
  • エンドツーエンド暗号化–ファイルはサーバーへのアップロード中に暗号化されます
  • NextCloudは無料でオープンソースです
  • オンラインオフィススイート(Collobora、OnlyOffice)と統合できるため、NextCloudから直接ドキュメント、ppt、xlsファイルを作成および編集できます。
  • アプリストアには、機能を拡張するための何百ものアプリが含まれています(カレンダーアプリ、メモを取るアプリ、ビデオ会議アプリなど)。

関連コンテンツ

  • Ubuntu 20.04にPHPとNginx(LEMP)をインストールしてセットアップする方法
  • Debian11とLEMPにNextCloudをインストールして設定する方法
  • Centos8とLEMPにNextCloudをインストールして構成する方法
  • Ubuntu20.04にMariadb10をインストールして構成する方法
  • Ubuntu20.04にmysql8をインストールしてセットアップする方法
  • Debian 11にPHPとNginx(LEMP)をインストールしてセットアップする方法

前提条件

このガイドに従うには、次のことを確認してください。

  • 最新のUbuntu20.04サーバー
  • サーバーからのインターネットアクセス
  • サーバーまたはsudoアクセス権を持つユーザーからのrootアクセス

目次

  1. サーバーパッケージが最新であることを確認します
  2. Ubuntu20.04へのMariadb10のインストール
  3. NextCloud用のmysqlユーザーの作成
  4. Ubuntu20.04へのPHPのインストール
  5. Ubuntu20.04へのNginxのインストール
  6. Nextcloudをダウンロードして設定する
  7. 仮想ホストからNextCloudにサービスを提供するようにNginxを構成する
  8. PHP構成の更新
  9. ウェブURLからNextcloudにアクセスする

1。サーバーパッケージが最新であることを確認してください

次のコマンドを使用して、サーバーパッケージが最新であることを確認しましょう。

sudo apt update
sudo apt -y upgrade

その間に、必要となるいくつかの依存関係もインストールしましょう

sudo apt install -y unzip vim

2。 Ubuntu20.04へのMariadbのインストール

Mariadbは、人気のあるオープンソースのリレーショナル管理システムです。デフォルトのリポジトリでは、mariadb-serverとして利用できます。 。

次のコマンドでインストールします:

sudo apt install -y mariadb-server

Mariadbは、Ubuntu20.04にデフォルトでインストールおよび起動されます。これでステータスを確認してください

$ sudo systemctl status mariadb
● mariadb.service - MariaDB 10.3.32 database server
     Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled)
     Active: active (running) since Wed 2021-12-15 08:40:15 UTC; 6min ago
       Docs: man:mysqld(8)
             https://mariadb.com/kb/en/library/systemd/
    Process: 47484 ExecStartPre=/usr/bin/install -m 755 -o mysql -g root -d /var/run/mysqld (code=exited, status=0/SUCCESS)
    Process: 47485 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
    Process: 47487 ExecStartPre=/bin/sh -c [ ! -e /usr/bin/galera_recovery ] && VAR= ||   VAR=`cd /usr/bin/..; /usr/bin/galera_recovery`; [ $? -eq 0 ]   && systemctl set-environment _WSREP_START_POSITION=$VAR || exit 1 (cod>
    Process: 47566 ExecStartPost=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
    Process: 47568 ExecStartPost=/etc/mysql/debian-start (code=exited, status=0/SUCCESS)
   Main PID: 47534 (mysqld)
     Status: "Taking your SQL requests now..."
      Tasks: 30 (limit: 4631)
     Memory: 62.7M
     CGroup: /system.slice/mariadb.service
             └─47534 /usr/sbin/mysqld

Dec 15 08:40:15 ip-10-2-40-248 systemd[1]: Starting MariaDB 10.3.32 database server...
Dec 15 08:40:15 ip-10-2-40-248 mysqld[47534]: 2021-12-15  8:40:15 0 [Note] /usr/sbin/mysqld (mysqld 10.3.32-MariaDB-0ubuntu0.20.04.1) starting as process 47534 ...
Dec 15 08:40:15 ip-10-2-40-248 systemd[1]: Started MariaDB 10.3.32 database server.
Dec 15 08:40:15 ip-10-2-40-248 /etc/mysql/debian-start[47573]: Looking for 'mysql' as: /usr/bin/mysql
Dec 15 08:40:15 ip-10-2-40-248 /etc/mysql/debian-start[47573]: Looking for 'mysqlcheck' as: /usr/bin/mysqlcheck
Dec 15 08:40:15 ip-10-2-40-248 /etc/mysql/debian-start[47573]: This installation of MySQL is already upgraded to 10.3.32-MariaDB, use --force if you still need to run mysql_upgrade
Dec 15 08:40:15 ip-10-2-40-248 /etc/mysql/debian-start[47581]: Checking for insecure root accounts.

mariadbが起動時に起動するようにするには、次のsystemdコマンドでmariadbを有効にします。

sudo systemctl enable mariadb

mysqlサービスが実行されたら、それを保護する必要があります。 Mysqlはそれを行うコマンドラインユーティリティを提供します:

sudo mysql_secure_installation

上記のコマンドを実行すると、mysqlインスタンスのrootパスワードを保護および設定するためのプロンプトが表示されます。

このガイドのmariadbのインストールと設定の詳細については、こちらをご覧ください。

3。 NextCloud用のmysqlユーザーの作成

DBに接続するアプリごとに専用のユーザーを用意することを常にお勧めします。 mysql権限の管理に関するこのガイドをここで確認してください。 nextcloudで使用するデータベース、ユーザー、パスワードを設定します:

mysqlサーバーに接続します:

mysql -u root -p

パスワードを入力した後、mysqlプロンプトに次のように入力します。

create database nextcloud;
create user 'nextcloud_user'@'%' identified by 'S0mStrongPa$$word';
grant all privileges on nextcloud.* to 'nextcloud_user'@'%';

mysql接続を構成したので、次のセクションに進み、PHPとNginxをインストールして構成します。

4。 Ubuntu20/04へのPHP7.4のインストール

NextCloudはPHP7.4で正常に動作します。このバージョンは、デフォルトのUbuntuリポジトリで利用できます。

次に、phpと依存関係をインストールします

sudo apt install -y \
  php \
  php-gd \
  php-curl \
  php-zip \
  php-dom \
  php-xml \
  php-simplexml \
  php-mbstring \
  php-intl \
  php-json \
  php-fpm

PHPとNginxの設定の詳細については、こちらのガイドをご覧ください。

5。 Ubuntu20.04へのNginxのインストール

次に、システムにNginxをインストールしましょう。このコマンドを使用してnginxをインストールします

sudo apt install -y nginx

Nginxはデフォルトで起動されます。次のコマンドを使用してステータスを確認します:

$ sudo systemctl status nginx
● nginx.service - A high performance web server and a reverse proxy server
     Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
     Active: active (running) since Sat 2021-12-11 14:42:39 UTC; 29s ago
       Docs: man:nginx(8)
    Process: 13698 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
    Process: 13699 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
   Main PID: 13780 (nginx)
      Tasks: 3 (limit: 4626)
     Memory: 3.1M
        CPU: 24ms
     CGroup: /system.slice/nginx.service
             ├─13780 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
             ├─13783 nginx: worker process
             └─13784 nginx: worker process

Dec 11 14:42:39 ip-10-2-40-145 systemd[1]: Starting A high performance web server and a reverse proxy server...
Dec 11 14:42:39 ip-10-2-40-145 systemd[1]: Started A high performance web server and a reverse proxy server.

Active: active (running) サービスが現在稼働中であることを示します。

起動時にサービスを有効にするには、次のコマンドを使用します:

sudo systemctl enable nginx

6。 Nextcloudをダウンロードして設定する

システムでLEMPサーバーを正常に構成したので、NextCloudをダウンロードしてセットアップしましょう。 NextCloudの最新バージョンは、NextCloudのインストールページから入手できます。このコマンドを使用して、サーバーNextCloudをダウンロードします:

cd /tmp
curl -LO https://download.nextcloud.com/server/releases/nextcloud-23.0.0.zip

次に、/var/wwwでNextCloudを提供するためのディレクトリパスに変更しましょう 次に、ダウンロードしたファイルをそこに抽出します:

cd /var/www
sudo unzip /tmp/nextcloud-23.0.0.zip
sudo chown -R $USER:$GROUP nextcloud
sudo chmod -R 755 nextcloud

Nextcloudには、データを保持するためのディレクトリが必要でした。したがって、データディレクトリを作成し、nextcloudディレクトリに適切な権限を設定します

sudo mkdir -p /var/nextcloud/data
sudo chown -R $USER:$GROUP /var/nextcloud
sudo chmod -R 755 /var/nextcloud

7。仮想ホストからNextCloudにサービスを提供するようにNginxを構成する

NextCloudコンテンツを/var/www/nextcloudにダウンロードすることができました 。次は、Nginxをセットアップして提供します。

nginxがコンテンツを提供するディレクトリに仮想サイトを作成しましょう。/etc/nginx/conf.d

sudo vim /etc/nginx/conf.d/nextcloud.conf

次のコンテンツを追加します:

server {
    listen 80;

    server_name nextcloud.citizix.com;
    root /var/www/nextcloud;
    index index.php;

    location / {
        try_files $uri $uri/ /index.php?$args;
    }

    location = /favicon.ico {
        log_not_found off;
        access_log off;
    }

    location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {
        expires max;
        log_not_found off;
    }

    location = /robots.txt {
        allow all;
        log_not_found off;
        access_log off;
    }

    location ~ \.php$ {
        include /etc/nginx/fastcgi_params;
        fastcgi_pass unix:/run/php/php-fpm.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    }
}

上記の変更が行われたら、nginxサーバーとphp-fomサーバーを再起動する必要があります。これを実現するには、ターミナルでこれらのコマンドを使用します。

sudo systemctl restart php7.4-fpm nginx

ウェブURLからNextcloudにアクセスする

次に、設定したドメイン、http://nextcloud.citizix.com/nextcloudに移動します 私のため。ユーザーアカウントを作成するように求められます。新しいユーザーに使用するユーザー名とパスワードを入力します:

次に、データベースの詳細を入力します:

その後、[完了]をクリックします。ログインページにリダイレクトされ、作成したユーザーの詳細を使用してログインします。ログインに成功すると、ダッシュボードが表示されます。

結論

このガイドでは、Nextクラウドにサービスを提供するためにUbuntu20.04でLEMPをセットアップすることができました。


Ubuntu
  1. Ubuntu18.04にRedisをインストールして構成する方法

  2. Ubuntu18.04にRedmineをインストールして設定する方法

  3. Ubuntu18.04にSambaをインストールして設定する方法

  1. Ubuntu20.04にRedisをインストールして構成する方法

  2. Ubuntu20.04にJenkinsをインストールして構成する方法

  3. Ubuntu16.04にAskbotをインストールして構成する方法

  1. Ubuntu14.04にMongoDBをインストールして構成する方法

  2. Ubuntu16.04にSolr6をインストールして構成する方法

  3. Ubuntu16.04にGitLabをインストールして構成する方法