Home
Packages
Forums
Wiki
GitLab
Security
AUR
Download
コンテンツにスキップ
メインメニュー
メインメニュー
サイドバーに移動
非表示
案内
メインページ
目次
コミュニティに貢献
最近の出来事
おまかせ表示
特別ページ
交流
ヘルプ
貢献
最近の更新
最近の議論
新しいページ
統計
リクエスト
ArchWiki
検索
検索
表示
アカウント作成
ログイン
個人用ツール
アカウント作成
ログイン
Mattermostのソースを表示
ページ
議論
日本語
閲覧
ソースを閲覧
履歴を表示
ツール
ツール
サイドバーに移動
非表示
操作
閲覧
ソースを閲覧
履歴を表示
全般
リンク元
関連ページの更新状況
ページ情報
表示
サイドバーに移動
非表示
←
Mattermost
あなたには「このページの編集」を行う権限がありません。理由は以下の通りです:
この操作は、次のグループに属する利用者のみが実行できます:
登録利用者
。
このページのソースの閲覧やコピーができます。
[[Category:ウェブアプリケーション]] [[en:Mattermost]] [http://www.mattermost.org/ Mattermost のホームページ] より: :Mattermost はオープンソースで、セルフホスト型の Slack クローンです。 :プロプライエタリな SaaS メッセージングの代替として、Mattermost はチームコミュニケーションをひと処に集めて、全ての情報を検索・閲覧しやすくします。 この記事では Mattermost サーバーをインストール・設定する方法を説明します。 == インストール == Mattermost サーバーをインストールする方法は2つあります: * [[Docker]] を使用して [[#Docker を使う]]で説明している手順に従う。 * [[AUR]] パッケージを使用して [[#AUR を使う]]で説明している手順に従う。 [[Electron]] ベースのデスクトップクライアントは {{aur|mattermost-desktop}} パッケージでインストールできます。 === Docker を使う === Docker を使用する場合、手動でデータベースサーバーをインストールして Mattermost の依存パッケージを設定する必要がありません。docker イメージには依存パッケージが全てバンドルされているため、作業が楽です。 そのかわりデータベースバックエンドやウェブサーバーを選択することはできません。docker イメージで提供されているものを使うしかありません。 * [[Docker#インストール|Docker]] をインストール。 * ソースをダウンロード: :{{bc|<nowiki> $ git clone https://github.com/mattermost/mattermost-docker.git </nowiki>}} * Team エディションの場合、{{ic|docker-compose.yml}} ファイルを編集して次の行をコメントアウト: {{ic|dockerfile: Dockerfile-enterprise}} * docker コンテナをビルド・起動: :{{bc|<nowiki> $ cd mattermost-docker $ docker-compose build $ docker-compose up -d $ docker run --name mattermost-preview -d --publish 8065:8065 mattermost/mattermost-preview </nowiki>}} * ブラウザで {{ic|http://localhost:8065/}} を開く。 TLS やメールの設定方法やエンタープライズ機能の有効化、Docker Compose によって複数のサーバーノードを使う方法は [https://docs.mattermost.com/install/prod-docker.html 公式ガイド] を参照してください。 [https://hub.docker.com/r/mattermost/ Mattermost 公式の Docker Hub ページ] で提供されている Docker イメージは複数存在します。[https://github.com/mattermost/mattermost-docker Mattermost Docker イメージのリポジトリ] も参照。 === AUR を使う === {{Pkg|mattermost}} パッケージを[[インストール]]してください。または {{aur|mattermost-git}} で開発版をインストールできます。 * インストールすると {{ic|mattermost}} ユーザーとグループが作成されます。 * mattermost のディレクトリは {{ic|/var/lib/mattermost}} に作成され所有者は {{ic|mattermost:root}} となります。 [[#データベースの設定]]に進んでください。 == データベースの設定 == Mattermost はデータベースバックエンドを必要とします。データベースを同じマシンで実行する場合、最初に [[MySQL]]/MariaDB または [[PostgreSQL]] をインストールしてください。以下のセクションのどちらかに従ってから [[#Mattermost の設定]]に進んでください。 公式サポートされているのは MySQL ですが、公式ガイドは PostgreSQL を使います。 === MySQL/MariaDB === {{hc|$ mysql -u root -p| CREATE DATABASE mattermostdb; CREATE USER mmuser IDENTIFIED BY 'mmuser_password'; GRANT ALL ON mattermostdb.* TO mmuser; }} === PostgreSQL === 1. [[PostgreSQL#PostgreSQL のインストール|PostgreSQL]] をインストール。 2. {{ic|postgres}} ユーザーでサーバーに接続: :{{bc|sudo -u postgres psql}} 3. Mattermost データベースを作成: :{{bc|<nowiki>CREATE DATABASE mattermostdb; CREATE USER mmuser WITH PASSWORD 'mmuser_password'; GRANT ALL PRIVILEGES ON DATABASE mattermostdb to mmuser; </nowiki>}} 4. {{ic|\q}} で {{ic|psql}} を抜ける。 {{Note|Mattermost と PostgreSQL が同一マシン上にある場合、Unix ソケットを使用するほうが高速かつセキュアです。}} ==== TCP ソケットを使う ==== 5. [[PostgreSQL#リモートホストから PostgreSQL にアクセスできるように設定]]に書かれているように設定。 6. 動作を確認: :{{bc|1=$ psql --host=''ip_address'' --dbname=mattermostdb --username=mmuser --password}} ==== Unix ソケットを使う ==== 5. {{ic|/var/lib/postgres/data/pg_ident.conf}} に以下の行を追加して Unix ユーザーの {{ic|mattermost}} を PostgreSQL ユーザーの {{ic|mmuser}} にマッピング: :{{bc|mattermap mattermost mmuser}} 6. {{ic|/var/lib/postgres/data/pg_hba.conf}} に以下の行を追加して Unix ソケットを設定: :{{bc|1=local mattermostdb mattermost peer map=mattermap}} 7. {{ic|postgresql.service}} を[[再起動]]。 8. 動作を確認: :{{bc|1=$ sudo -u mattermost psql --dbname=mattermostdb --username=mattermost}} [[#Mattermost の設定]]に進んでください。 ==== Mattermost の設定 ==== Mattermost は {{ic|/etc/webapps/mattermost/config.json}} で設定します。文字列はクォートで囲う必要があります。 使用するデータベースにあわせて設定する必要があります。 {{ic|DriverName}} の設定: MySQL の場合は {{ic|mysql}}、PostgreSQL の場合は {{ic|postgres}} に設定。 {{ic|DataSource}} の設定: * MySQL の場合、{{ic|1='''mmuser''':'''mmuser_password'''@unix(/run/mysqld/mysqld.sock)/'''mattermostdb'''?charset=utf8mb4,utf8}} に設定。 * PostgreSQL の場合: ** TCP ソケット: {{ic|1=postgres://'''mmuser''':'''mmuser_password'''@127.0.0.1:5432/'''mattermostdb'''?sslmode=disable&connect_timeout=10}} ** Unix ソケット: {{ic|1=postgres:///'''mattermostdb'''?host=/run/postgresql}} ({{ic|postgres:}} の後にスラッシュが3つ必要です。{{ic|mattermostdb}} はデータベースの名前、{{ic|/run/postgresql}} は Unix ソケットがあるディレクトリです) {{Note|{{ic|mmuser_password}} はユーザーのパスワードに置き換えてください。}} {{ic|mattermost.service}} を[[起動]]・[[有効化]]して http://localhost:8065/ を開いてください。 == Mattermost のセットアップ == 1. Mattermost を開いてチームとユーザーを作成。 2. システムの最初のユーザーには自動的に {{ic|system_admin}} ロールが割り当てられ、システムコンソールにアクセスすることができます。 3. {{ic|town-square}} チャンネルからドロップダウンをクリックして {{ic|System Console}} オプションを選択。 4. {{ic|Notification > Email}} の設定を更新して SMTP メールサービスを設定。以下は AmazonSES を使用する例: :* {{ic|Send Email Notifications}} を {{ic|true}} に設定 :* {{ic|Require Email Verification}} を {{ic|true}} に設定 :* {{ic|Feedback Name}} を {{ic|No-Reply}} に設定 :* {{ic|Feedback Email}} を {{ic|mattermost@example.com}} に設定 :* {{ic|SMTP Username}} を {{ic|[YOUR_SMTP_USERNAME]}} に設定 :* {{ic|SMTP Password}} を {{ic|[YOUR_SMTP_PASSWORD]}} に設定 :* {{ic|SMTP Server}} を {{ic|email-smtp.us-east-1.amazonaws.com}} に設定 :* {{ic|SMTP Port}} を {{ic|465}} に設定 :* {{ic|Connection Security}} を {{ic|TLS}} に設定 :* 設定を保存 5. {{ic|File > Storage}} から {{ic|Local Directory Location}} の設定を {{ic|./data/}} から {{ic|/mattermost/data}} に変更。 6. {{ic|General > Logging}} から {{ic|Log to The Console}} を {{ic|false}} に設定。 7. 他の設定も自由に変更してください。 8. {{ic|mattermost.service}} を[[再起動]]。 === Plugins === Plugins are enabled by default, but require access to the plugins directory which needs to be created with the correct owner: {{bc|<nowiki> $ mkdir /usr/share/webapps/mattermost/client/plugins $ chown mattermost:mattermost /usr/share/webapps/mattermost/client/plugins </nowiki>}} == ヒントとテクニック == === リバースプロキシによる HTTPS === 自己署名 TLS 証明書をサポートしていない Android や iOS アプリから安全に Mattermost サーバーにアクセスしたい場合、リバースウェブプロキシを設定する方法があります [https://docs.mattermost.com/install/config-proxy-nginx.html?highlight=proxy#configuring-nginx-as-a-proxy-for-mattermost-server]。 プロキシの主な利点: * SSL ターミネーション * HTTP から HTTPS にリダイレクト * ポート 80 を 8065 にマッピング * 標準的なリクエストログ 大抵のウェブサーバーでプロキシを使えます。 ==== nginx ==== 1. [[nginx]] をインストール・設定 ({{Pkg|nginx-mainline}} を推奨)。 2. ドメイン名 (例: {{ic|mattermost.example.com}}) からサーバーへのアクセスを設定。 3. インターネットから Mattermost サーバーへのプロキシ接続を nginx に設定。nginx の設定ファイル {{ic|/etc/nginx/sites-available/mattermost}} を作成・編集: :{{bc|<nowiki> upstream backend { server 127.0.0.1:8065; } proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=mattermost_cache:10m max_size=3g inactive=120m use_temp_path=off; server { listen 80; server_name mattermost.example.com; location ~ /api/v[0-9]+/(users/)?websocket$ { proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; client_max_body_size 50M; 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_buffers 256 16k; proxy_buffer_size 16k; proxy_read_timeout 600s; proxy_pass http://backend; } location / { client_max_body_size 50M; proxy_set_header Connection ""; 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_buffers 256 16k; proxy_buffer_size 16k; proxy_read_timeout 600s; proxy_cache mattermost_cache; proxy_cache_revalidate on; proxy_cache_min_uses 2; proxy_cache_use_stale timeout; proxy_cache_lock on; proxy_pass http://backend; } } </nowiki>}} 4. mattermost サーバーを有効化: :{{bc|<nowiki> # mkdir /etc/nginx/servers-enabled # ln -s /etc/nginx/servers-available/mattermost /etc/nginx/server-enabled/mattermost </nowiki>}} 5. {{ic|nginx.service}} を[[再起動]]。 6. プロキシ経由で Mattermost にアクセスできることを確認: :{{bc|curl http://localhost/}} : {{ic|Mattermost}} というタイトルのページが表示されるはずです。 7. [[Let’s Encrypt]] を設定。 ==== Lighttpd2 ==== Mattermost のプロキシとして {{AUR|lighttpd2-git}} を使用する設定例では証明書が {{ic|/etc/lighttpd2/certs/lighttpd2.pem}} にあることが前提となっています。 プロキシをバーチャルホストに転送したい場合は [http://doc.lighttpd.net/lighttpd2/mod_vhost.html mod_vhost] を参照。 {{hc|/etc/lighttpd2/lighttpd.conf|<nowiki> setup { module_load [ "mod_accesslog", "mod_proxy", "mod_openssl" ]; openssl [ "listen" => "0.0.0.0:443", "listen" => "[::]:443", "pemfile" => "/etc/lighttpd2/certs/lighttpd2.pem", "options" => ["ALL", "NO_TICKET"], "verify" => true, "verify-any" => true, "verify-depth" => 9 ]; listen "0.0.0.0:80"; listen "[::]:80"; log ["debug" => "", default => "/var/log/lighttpd2/error.log"]; accesslog "/var/log/lighttpd2/access.log"; accesslog.format "%h %V %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}\""; static.exlude_extensions [ ".php", ".pl", ".fcgi", "~", ".inc" ]; } openssl.setenv "client-cert"; keepalive.timeout 360; docroot "/srv/http"; index [ "index.php", "index.html", "index.htm" ]; include "/etc/lighttpd2/mimetypes.conf"; proxy "127.0.0.1:8065"; </nowiki>}} === 翻訳とプルリクエストのテスト === 非公式スクリプト [https://github.com/wget/mattermost-prepare-pkgbuild mattermost-prepare-pkgbuild] を使うことで翻訳とプルリクエストをテストできます。
このページで使用されているテンプレート:
テンプレート:AUR
(
ソースを閲覧
)
テンプレート:Aur
(
ソースを閲覧
)
テンプレート:Bc
(
ソースを閲覧
)
テンプレート:Hc
(
ソースを閲覧
)
テンプレート:Ic
(
ソースを閲覧
)
テンプレート:Note
(
ソースを閲覧
)
テンプレート:Pkg
(
ソースを閲覧
)
Mattermost
に戻る。
検索
検索
Mattermostのソースを表示
話題を追加