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

Ubuntu16.04にPostgreSQLとNginxを使用してMattermostをインストールする方法

Mattermostは、プログラミング言語GolangおよびReactで記述されたオープンソースのメッセージングシステムです。これはSlackの代替手段であり、SlackやHipchatなどの独自のメッセージングサービスを構築できます。 Mattermostは、チームのコミュニケーションを1つの場所にもたらし、どこからでもアクセスできるようにします。デスクトップ、Androidデバイス、iPhoneからアクセスできます。

このチュートリアルでは、データベースシステムとしてPostgreSQLを使用し、MattermostのリバースプロキシとしてNginxを使用する独自のMattermostサーバーを作成する方法を説明します。オペレーティングシステムとしてubuntu16.04を使用します。

前提条件

  • Ubuntu16.04-64ビット
  • ルート権限

ステップ1-PostgreSQLデータベースをインストールして構成する

MattermostはMySQLおよびPostgreSQLデータベースをサポートしています。このチュートリアルでは、PostgreSQLをメインデータベースとして使用します。サーバーに接続してリポジトリを更新します。

SSHでサーバーに接続するか、ターミナルにログインしてUbuntuリポジトリを更新します。

ssh [email protected]
sudo apt-get update

rootユーザーとして、このaptコマンドを使用してPostgreSQLをインストールします。

sudo apt-get install postgresql postgresql-contrib

インストールが完了したら、postgresユーザーにログインし、コマンド' psqlを入力します。 'postgresqlシェルにログインします。

su - postgres
psql

以下のコマンドでpostgresユーザーのパスワードを変更します:

\password postgres
Enter new password:

次に、Mattermostインストール用に新しいデータベースとユーザーを構成する必要があります。 ' mattermostdbという名前の新しいデータベースを作成します 'およびユーザー'ma​​tteruser 'パスワード付き'ma​​tterpassword '。インストール用の安全なパスワードを選択してください。

以下のPostgreSQLクエリを使用して新しいデータベースとユーザーを作成します。

CREATE DATABASE mattermostdb;
CREATE USER matteruser WITH PASSWORD 'matterpassword';

' matteruserを付与します 'データベースへの特権'ma​​ttermostdb 'そして終了します。

GRANT ALL PRIVILEGES ON DATABASE mattermostdb TO matteruser;
\q

ステップ2-Mattermostのインストールと構成

Mattermostは、rootユーザーではなく、通常のLinuxユーザーとしてインストールおよび構成します。 Mattermostをユーザー「matter」として実行するため、サーバー上に「matter」という名前の新しいLinuxユーザーを作成する必要があります。

新しい'問題を作成する 'ユーザーとパスワード。

useradd -m -s /bin/bash matter
passwd matter

「matter」ユーザーが作成されました。ユーザーにログインし、wgetを使用して最新のMattermostバージョンをダウンロードします。

su - matter
wget https://releases.mattermost.com/3.4.0/mattermost-3.4.0-linux-amd64.tar.gz

Mattermostファイルを抽出すると、新しいディレクトリ「mattermost」が表示されます。cdコマンドでそのディレクトリに入ります。

tar -xzvf mattermost-3.4.0-linux-amd64.tar.gz
cd mattermost/

次に、ユーザーファイルを保存するための新しい「データ」ディレクトリを作成し、最も重要な構成ファイル「 config / config.json」を編集します。 'vim付き。

mkdir data/
vim config/config.json

Nginxリバースプロキシの背後でMattermostを実行するため、ローカルIPアドレスでリッスンするようにMattermostを構成することをお勧めします。 ' ServiceSettings 'ブロック、ローカルホストのIPアドレスを4行目の構成に追加します。

"ListenAddress": "127.0.0.1:8065",

次に、' SqlSettings に移動します '48行目。'DriverNameを変更します。 'および'データソース '以下の構成でPostgreSQLデータベースを使用するための構成:

"DriverName": "postgres",
"DataSource": "postgres://matteruser:[email protected]:5432/mattermostdb?sslmode=disable&connect_timeout=10",

注:

matteruser =postgresqlユーザー。
matterpassword =パス​​ワード。
mattermostdb =データベース。

保存して終了します。

これが完了したら、binディレクトリに移動して、最も重要なことを実行します。

cd bin/
./platform

現在、Mattermostがポート8065のローカルホストIPで実行されていることがわかります。

Ctrl+cを押して終了します。

ステップ3-MattermostSystemdサービスを構成する

systemdシステムディレクトリに移動し、新しい最も重要なサービスファイルを作成します。

cd /etc/systemd/system/
vim mattermost.service

以下に構成を貼り付けます:

[Unit]
Description=Mattermost is an open source, self-hosted Slack-alternative
After=syslog.target network.target

[Service]
Type=simple
User=matter
Group=matter
ExecStart=/home/matter/mattermost/bin/platform
PrivateTmp=yes
WorkingDirectory=/home/matter/mattermost
Restart=always
RestartSec=30
LimitNOFILE=49152

[Install]
WantedBy=multi-user.target

保存して終了します。

systemdデーモンをリロードし、上記で作成したMattermostサービスを開始します。

systemctl daemon-reload
systemctl start mattermost

エラーがないことを確認してください。 Mattermostサービスが実行されていることを確認してください。

netstat -plntu
systemctl status mattermost

ステップ4-Nginxをインストールして構成する

このステップでは、Nginxをインストールし、NginxをMattermostのリバースプロキシとして構成します。最も重要なポート8056をHTTPおよびHTTPSポートにマップします。

このaptコマンドを使用してUbuntuリポジトリからNginxをインストールします。

sudo apt-get install nginx

次に、Nginx configディレクトリに移動し、SSLサブディレクトリを作成します。

cd /etc/nginx/
mkdir ssl/; cd ssl/

OpenSSLを使用して新しい自己署名SSL証明書ファイルを生成し、秘密鍵のアクセス許可を変更します。

openssl req -new -x509 -days 365 -nodes -out /etc/nginx/ssl/mattermost.crt -keyout /etc/nginx/ssl/mattermost.key
chmod 400 mattermost.key
>

' sites-availableにMattermostの新しい仮想ホストファイルを作成します 'ディレクトリ。

cd /etc/nginx/sites-available/
vim mattermost

以下に仮想ホスト構成を貼り付けます:

server {
   listen         80;
   server_name    mattermost.mydomain.com;
   return         301 https://$server_name$request_uri;
}

server {
   listen 443 ssl;
   server_name mattermost.mydomain.com;

   ssl on;
   ssl_certificate /etc/nginx/ssl/mattermost.crt;
   ssl_certificate_key /etc/nginx/ssl/mattermost.key;
   ssl_session_timeout 5m;
   ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
   ssl_ciphers 'EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH';
   ssl_prefer_server_ciphers on;
   ssl_session_cache shared:SSL:10m;

   location / {
      gzip off;
      proxy_set_header X-Forwarded-Ssl on;
      client_max_body_size 50M;
      proxy_set_header Upgrade $http_upgrade;
      proxy_set_header Connection "upgrade";
      proxy_set_header Host $http_host;
      proxy_set_header X-Real-IP $remote_addr;
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      proxy_set_header X-Forwarded-Proto $scheme;
      proxy_set_header X-Frame-Options SAMEORIGIN;
      proxy_pass http://127.0.0.1:8065;
   }
}

ドメイン名を独自のドメインに変更し、保存して終了します。

' sites-enabled で最も重要なファイルへのシンボリックリンクを作成して、仮想ホストをアクティブ化します 'ディレクトリ。

ln -s /etc/nginx/sites-available/mattermost /etc/nginx/sites-enabled/

Nginx構成をテストし、エラーがないことを確認して、nginxを再起動します。

nginx -t
systemctl restart nginx

ステップ5-テスト

Webブラウザーを開き、最も重要なドメイン名(私の場合はmattermost.mydomain.com)にアクセスします。

HTTPS接続に自動的にリダイレクトされます。

最初に新しいアカウントを作成し、[アカウントの作成]をクリックします '。

次に、新しいチームを作成するためのリンク、または管理者/システムコンソールにアクセスするためのリンクが表示されます。

'システムコンソールに移動をクリックします 'そして、以下にシステムコンソールダッシュボードが表示されます:

[新しいチームの作成]をクリックします '、チーム名を入力し、'次へをクリックします '。次に、チームのURLを構成し、[完了]をクリックします。 'ボタン。

最後に、チームダッシュボードが表示されます。

最も重要なチームチャット。

Ubuntu16.04上のPostgreSQLおよびNginxWebサーバーのほとんどが正常にインストールされました。


Ubuntu
  1. Ubuntu18.04でApacheを使用してphpMyAdminをインストールして保護する方法

  2. Ubuntu15.04にPostgresqlとphpPgAdminをインストールする方法

  3. Ubuntu11.10にPHP5とMySQLを使用してNginxをインストールする方法

  1. Ubuntu18.04にNginxを使用してphpMyAdminをインストールする方法

  2. Ubuntu16.04にNginxでMediaWikiをインストールする方法

  3. Ubuntu18.04にNginxとLetsencryptを使用してMagento2をインストールする方法

  1. Ubuntu15.04にPostgreSQLとNginxを使用してGitlabをインストールする方法

  2. Ubuntu15.10にNginxを使用してMagentoをインストールする方法

  3. Ubuntu 15.10にNginx、PHP-FPM、SSLを使用してDrupal8をインストールする方法