서버 설치 · 12 min read · Jan 23, 2026
CentOS 7에서 PostgreSQL 및 Nginx로 Mattermost 설치하기
Mattermost는 오픈 소스, 자체 호스팅된 Slack 대안입니다. Mattermost는 방화벽 뒤에서 현대적인 커뮤니케이션을 제공합니다.
독점 SaaS 메시징의 대안으로, Mattermost는 모든 팀 커뮤니케이션을 한 곳에 모아 검색 가능하고 어디서나 접근할 수 있도록 합니다.
Mattermost는 “Slack 호환, Slack 제한 없음”으로, 기존 Slack 통합과의 호환성을 포함하여 Slack의 수신 및 발신 웹훅 통합의 슈퍼셋을 지원합니다. 기존 Slack 팀에서 사용자를 가져오고, 공개 채널 기록 및 테마 설정 색상을 Mattermost로 가져올 수 있습니다.
이 HowTo에서 사용되는 이름, 변수 및 계정
서버의 로컬 IP : 192.168.2.100
서버의 FQDN : mattermost.example.com
Mattermost 데이터베이스 이름 : mattermost
Mattermost 데이터베이스 접근 사용자 : mmuser
mmuser의 데이터베이스 비밀번호 : DBAss47slX3전제 조건
이 HowTo는 PostgreSQL을 데이터베이스 백엔드로 사용하여 CentOS7에서 Mattermost 설치를 설명합니다. 이 가이드를 위해 모든 것을 단일 서버에 설치한다고 가정하지만, 경험이 있는 사용자는 각 구성 요소(예: 데이터베이스 서버)를 다른 머신에 설치하는 것이 쉽습니다. 설치는 root 사용자로 수행되었지만, 물론 sudo 사용자가 활성화된 사용자를 사용할 수도 있습니다.
서버의 IP 주소가 192.168.2.100이고 DNS가 mattermost.example.com으로 해석된다고 가정합니다. 따라서 이 HowTo에서 192.168.2.100 또는 mattermost.example.com을 읽을 때마다 서버의 IP 주소로 교체하십시오.
시작하기 전에 최소한의 CentOS7 설치가 필요합니다. 설치 후 이메일을 올바르게 설정했는지 확인하십시오(포스트픽스 구성), 시스템이 이메일을 보낼 수 있도록 합니다(예: 스마트 호스트 또는 유사한 솔루션을 통해).
계속하기 전에 몇 가지 작은 점검을 해보십시오:
서버의 터미널에서 메일을 보내보십시오:
[root@mattermost ~]echo -en "Subject: Testmail\n\nThis is a test\n" | sendmail [email protected]([email protected]를 서버가 보낼 수 있는 이메일 주소로 교체하십시오). 시스템에서 이메일을 받았는지 확인하십시오!
mattermost.example.com의 이름 해상도 확인
다른 컴퓨터(설정하려는 서버가 아님)에서 mattermost.example.com에 ping을 시도하십시오. 긍정적인 결과를 얻어야 합니다:
C:\>ping mattermost.example.com
Pinging mattermost.witron.com [192.168.2.100] with 32 bytes of data:
Reply from 192.168.2.100: bytes=32 time<1ms TTL=64
Reply from 192.168.2.100: bytes=32 time<1ms TTL=64
Reply from 192.168.2.100: bytes=32 time<1ms TTL=64
Reply from 192.168.2.100: bytes=32 time<1ms TTL=64
Ping statistics for 192.168.2.100:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 0ms, Average = 0ms인터넷 연결 확인
이제 wget 패키지를 설치하겠습니다(나중에 필요합니다).
[root@mattermost ~] yum -y install wget그리고 이를 사용하여 공용 IP를 확인합니다. 그래서 인터넷 연결을 확인할 수 있습니다.
[root@mattermost ~] wget http://ipinfo.io/ip -qO -
46.101.122.124결과는 귀하의 공용 IP 주소여야 합니다.
방화벽 상태 확인 및 현재 비활성화
CentOS7 설치에 firewalld가 활성화되어 있는지 확인하십시오. 다음을 입력하여 확인할 수 있습니다.
[root@mattermost ~] systemctl status firewalld다음과 같은 내용이 표시되면
Active: active (running) since …
다음 두 명령어로 끄고 비활성화하십시오.
[root@mattermost ~] systemctl stop firewalld
[root@mattermost ~] systemctl disable firewalld이 튜토리얼의 끝에서 firewalld를 다시 활성화하고 Mattermost와 함께 올바르게 작동하도록 설정하는 방법에 대한 지침을 찾을 수 있습니다.
위의 모든 점검을 통과했거나 이 튜토리얼에 사용할 수 있는 시스템이 있다고 아는 경우 지금 계속 진행할 수 있습니다.
PostgreSQL 데이터베이스 서버 설치
우리는 Mattermost의 데이터베이스 백엔드로 PostgreSQL을 사용할 것입니다. 다음 명령어로 설치하십시오:
[root@mattermost ~] yum -y install postgresql-server postgresql-contrib설치 후 데이터베이스를 초기화해야 합니다.
[root@mattermost ~] postgresql-setup initdb
Initializing database ... OK그런 다음 PostgreSQL을 시작하고 자동 시작을 활성화합니다.
[root@mattermost ~]# systemctl start postgresql
[root@mattermost ~]# systemctl enable postgresql
Created symlink from /etc/systemd/system/multi-user.target.wants/postgresql.service to /usr/lib/systemd/system/postgresql.service.PostgreSQL이 실행 중인지 확인하십시오.
[root@mattermost ~]# systemctl status postgresql다음과 비슷한 내용이 보고되어야 합니다(텍스트 어딘가에 Active: active (running)이 있는지 확인하십시오).
? postgresql.service - PostgreSQL database server
Loaded: loaded (/usr/lib/systemd/system/postgresql.service; enabled; vendor preset: disabled)
Active: active (running) since Fri 2016-03-04 11:37:50 CET; 44s ago
Main PID: 17660 (postgres)
CGroup: /system.slice/postgresql.service
??17660 /usr/bin/postgres -D /var/lib/pgsql/data -p 5432
??17661 postgres: logger process
??17663 postgres: checkpointer process
??17664 postgres: writer process
??17665 postgres: wal writer process
??17666 postgres: autovacuum launcher process
??17667 postgres: stats collector process
Mar 04 11:37:48 mattermost systemd[1]: Starting PostgreSQL database server...
Mar 04 11:37:50 mattermost systemd[1]: Started PostgreSQL database server.
Mar 04 11:37:59 mattermost systemd[1]: Started PostgreSQL database server.Mattermost 데이터베이스 및 데이터베이스 사용자 생성
PostgreSQL은 자동으로 postgres라는 이름의 사용자 및 그룹을 생성했습니다. 우리는 데이터베이스 엔진에 연결하고 데이터베이스 및 이를 접근할 수 있는 사용자를 설정하기 위해 postgres 사용자를 사용합니다.
postgres 사용자로 프롬프트를 시작하십시오:
[root@mattermost ~]# sudo -i -u postgres프롬프트가 이제 다음과 같이 변경됩니다:
-bash-4.2$이제 데이터베이스 서버에 연결해 보겠습니다.
-bash-4.2$ psql
psql (9.2.15)
Type "help" for help.
postgres=#PostgreSQL 프롬프트 내에서 ‘mattermost’라는 이름의 데이터베이스를 생성합니다.
postgres=# CREATE DATABASE mattermost;
CREATE DATABASE이제 비밀번호 ‘ DBAss47slX3 ‘로 사용자 ‘ mmuser ‘를 생성합니다.
postgres=# **CREATE USER mmuser WITH PASSWORD '*DBAss47slX3*';
CREATE ROLE사용자에게 Mattermost 데이터베이스에 대한 접근 권한을 부여하려면 다음을 입력하십시오:
postgres=#GRANT ALL PRIVILEGES ON DATABASE mattermost to mmuser; GRANT postgres=#
그런 다음 다음을 입력하여 PostgreSQL 프롬프트를 종료할 수 있습니다:
postgres=#\q -bash-4.2$
그리고 postgres 사용자로 시작한 셸을 종료합니다.
-bash-4.2$exit logout [root@mattermost ~]#
사용자 이름/비밀번호를 통해 로컬호스트에서 PostgreSQL 데이터베이스에 대한 접근 허용
나중에 우리의 Mattermost 인스턴스는 PostgreSQL 데이터베이스와 통신하고 사용자 이름과 비밀번호로 인증하고 싶어합니다. 이를 허용하기 위해 PostgreSQL 구성을 약간 변경해야 합니다. 파일을 엽니다:
vi /var/lib/pgsql/data/pg_hba.confvi 또는 nano와 같은 편집기로 다음 줄을 변경하십시오:
host all all 127.0.0.1/32 ident다음과 같이:
host all all 127.0.0.1/32md5
파일을 저장한 후 PostgreSQL을 재시작합니다.
[root@mattermost ~]#systemctl restart postgresql
이제 이전에 생성한 사용자와 비밀번호로 데이터베이스 서버에 연결하여 올바르게 설정했는지 확인해야 합니다(서버에서 다른 비밀번호를 사용한 경우 해당 비밀번호를 사용하십시오):
[root@mattermost ~]#psql --host=127.0.0.1 --dbname=mattermost --username=mmuser --password Password for user mmuser: psql (9.2.15) Type "help" for help. mattermost=> \q [root@mattermost ~]#
이제 PostgreSQL 서버와 데이터베이스가 Mattermost를 위해 준비되었습니다!
Mattermost 다운로드 및 추출
이제 Github 리포지토리에서 Mattermost 서버의 복사본을 wget을 사용하여 직접 다운로드하겠습니다(이 튜토리얼 작성 시점에서 버전 v2.0.0이 현재 버전이었습니다).
[root@mattermost ~]#cd [root@mattermost ~]# wget -q "https://github.com/mattermost/platform/releases/download/v2.0.0/mattermost.tar.gz" -O mattermost.tar.gz
이제 아카이브를 추출하고 추출된 파일을 대상 위치(이 경우 /opt/mattermost)에 배치합니다.
[root@mattermost ~]#tar -xvzf mattermost.tar.gz [root@mattermost ~]# mv mattermost /opt
Mattermost 설치하기
Mattermost 데몬을 실행할 사용자 생성
나중에 Mattermost를 데몬으로 실행할 것이므로, 시스템에 ‘ mattermost ‘라는 이름의 새 사용자를 설정합니다. 이 사용자가 나중에 Mattermost 인스턴스를 실행합니다. 다음 명령어를 실행하여 시스템 사용자 및 그룹 ‘ mattermost ‘를 생성하십시오:
[root@mattermost ~]#useradd -r mattermost -U -s /sbin/nologin
Mattermost를 위한 데이터 저장 폴더 생성
Mattermost는 일부 데이터를 저장하고 싶어합니다. 예를 들어 업로드된 파일 등을 폴더에 저장합니다. 따라서 해당 폴더를 생성해야 합니다. 하드 드라이브의 어디에나 있을 수 있지만 ‘ mattermost ‘ 사용자에게 접근 가능해야 합니다. 나는 ‘/opt/mattermost/data’를 사용하기로 선택했습니다. 다음 명령어로 폴더를 생성하십시오:
[root@mattermost ~]#mkdir -p /opt/mattermost/data
Mattermost 디렉토리의 소유자 설정
이제 Mattermost 디렉토리의 그룹과 소유자를 이전에 생성한 사용자 및 그룹으로 설정합니다:
[root@mattermost ~]#chown -R mattermost:mattermost /opt/mattermost [root@mattermost ~]# chmod -R g+w /opt/mattermost**
Mattermost의 데이터베이스 연결 구성
Mattermost가 PostgreSQL 데이터베이스에 어떻게 연결해야 하는지 알려주기 위해 구성 파일을 편집해야 합니다:
*/opt/mattermost/config/config.json*‘ SqlSettings ‘ 섹션을 찾아 우리의 필요에 맞게 변경하십시오:
이전
"SqlSettings": {
"DriverName": "mysql",
"DataSource": "mmuser:mostest@tcp(dockerhost:3306)/mattermost_test?charset=utf8mb4,utf8",
"DataSourceReplicas": [],
"MaxIdleConns": 10,
"MaxOpenConns": 10,
"Trace": false,
"AtRestEncryptKey": "7rAh6iwQCkV4cA1Gsg3fgGOXJAQ43QVg"
},이후
"SqlSettings": {
"DriverName": "postgres",
"DataSource": "postgres://mmuser:[email protected]:5432/mattermost?sslmode=disable&connect_timeout=10",
"DataSourceReplicas": [],
"MaxIdleConns": 10,
"MaxOpenConns": 10,
"Trace": false,
"AtRestEncryptKey": "7rAh6iwQCkV4cA1Gsg3fgGOXJAQ43QVg"
},AtRestEncryptKey는 그대로 두셔도 됩니다!
Mattermost의 이메일 연결 구성
다시 한 번 구성 파일을 편집해야 합니다.
*/opt/mattermost/config/config.json*‘EmailSettings’ 섹션을 찾아 우리의 필요에 맞게 변경하십시오:
이전
"EmailSettings": {
"EnableSignUpWithEmail": true,
"EnableSignInWithEmail": true,
"EnableSignInWithUsername": false,
"SendEmailNotifications": false,
"RequireEmailVerification": false,
"FeedbackName": "",
"FeedbackEmail": "",
"SMTPUsername": "",
"SMTPPassword": "",
"SMTPServer": "",
"SMTPPort": "",
"ConnectionSecurity": "",
"InviteSalt": "bjlSR4QqkXFBr7TP4oDzlfZmcNuH9YoS",
"PasswordResetSalt": "vZ4DcKyVVRlKHHJpexcuXzojkE5PZ5eL",
"SendPushNotifications": false,
"PushNotificationServer":
}, 이후
"EmailSettings": {
"EnableSignUpWithEmail": true,
"EnableSignInWithEmail": true,
"EnableSignInWithUsername": false,
"SendEmailNotifications": false,
"RequireEmailVerification": false,
"FeedbackName": "",
"FeedbackEmail": "",
"SMTPUsername": "",
"SMTPPassword": "",
"SMTPServer": "127.0.0.1",
"SMTPPort": "25",
"ConnectionSecurity": "",
"InviteSalt": "bjlSR4QqkXFBr7TP4oDzlfZmcNuH9YoS",
"PasswordResetSalt": "vZ4DcKyVVRlKHHJpexcuXzojkE5PZ5eL",
"SendPushNotifications": false,
"PushNotificationServer": ""
}, 우리는 127.0.0.1과 포트 25를 사용합니다. 왜냐하면 우리는 이미 외부로 이메일을 보낼 수 있도록 구성된 로컬 포스트픽스를 사용하고 있기 때문입니다. 설정이 다르다면 올바른 값을 설정해야 합니다!
Mattermost가 내부 인터페이스(127.0.0.1)에서만 수신하도록 구성
기본적으로 Mattermost 서버 인스턴스는 모든 인터페이스에서 포트 8065(:8065)로 수신합니다. 우리는 Nginx 서버를 Mattermost 앞에 두고 싶기 때문에 이 동작을 변경하여 localhost(127.0.0.1:8065)에서만 수신하도록 합니다.
다음 줄을 변경하십시오:
"ListenAddress": ":8065",다음과 같이:
"ListenAddress": "127.0.0.1:8065",config.json 파일에서.
Mattermost 서버 테스트
이제 명령줄에서 Mattermost 서버가 시작되는지 테스트할 수 있습니다. 반드시 ‘mattermost’ 사용자로 수행하십시오. 실수로 ‘root’로 수행했다면 Mattermost 폴더의 권한을 다시 수정해야 합니다!
[root@mattermost ~]# su - mattermost -s /bin/bash
Last login: Fri Mar 4 12:47:52 CET 2016 on pts/0
su: warning: cannot change directory to /home/mattermost: No such file or directory
-bash-4.2$이제 Mattermost 설치 디렉토리로 이동하십시오:
-bash-4.2$ cd /opt/mattermost/bin/그리고 명령줄에서 Mattermost를 실행하십시오:
-bash-4.2$ ./platform출력은 다음과 비슷해야 합니다:
[2016/03/04 13:00:10 CET] [INFO] Loaded system translations for 'en' from '/opt/mattermost/i18n/en.json'
[2016/03/04 13:00:10 CET] [INFO] Current version is 2.0.0 (5950/Sat Feb 13 15:42:01 UTC 2016/c71c5cef632c7dc68072167c6fe091a60835fa02)
[2016/03/04 13:00:10 CET] [INFO] Enterprise Enabled: false
[2016/03/04 13:00:10 CET] [INFO] Current working directory is /opt/mattermost/bin
[2016/03/04 13:00:10 CET] [INFO] Loaded config file from /opt/mattermost/config/config.json
[2016/03/04 13:00:10 CET] [INFO] Server is initializing...
[2016/03/04 13:00:10 CET] [INFO] Pinging sql master database
[2016/03/04 13:00:10 CET] [INFO] Pinging sql replica-0 database
[2016/03/04 13:00:10 CET] [DEBG] Deleting any unused pre-release features
[2016/03/04 13:00:10 CET] [INFO] The database schema has been set to version 2.0.0
[2016/03/04 13:00:10 CET] [DEBG] Initializing user api routes
[2016/03/04 13:00:10 CET] [DEBG] Initializing team api routes
[2016/03/04 13:00:10 CET] [DEBG] Initializing channel api routes
[2016/03/04 13:00:10 CET] [DEBG] Initializing post api routes
[2016/03/04 13:00:10 CET] [DEBG] Initializing web socket api routes
[2016/03/04 13:00:10 CET] [DEBG] Initializing file api routes
[2016/03/04 13:00:10 CET] [DEBG] Initializing command api routes
[2016/03/04 13:00:10 CET] [DEBG] Initializing admin api routes
[2016/03/04 13:00:10 CET] [DEBG] Initializing oauth api routes
[2016/03/04 13:00:10 CET] [DEBG] Initializing webhook api routes
[2016/03/04 13:00:10 CET] [DEBG] Initializing preference api routes
[2016/03/04 13:00:10 CET] [DEBG] Initializing license api routes
[2016/03/04 13:00:10 CET] [DEBG] Parsing server templates at /opt/mattermost/api/templates/
[2016/03/04 13:00:10 CET] [DEBG] Initializing web routes
[2016/03/04 13:00:10 CET] [DEBG] Using static directory at /opt/mattermost/web/static/
[2016/03/04 13:00:10 CET] [DEBG] Parsing templates at /opt/mattermost/web/templates/
[2016/03/04 13:00:10 CET] [INFO] Starting Server...
[2016/03/04 13:00:10 CET] [INFO] Server is listening on 127.0.0.1:8065
[2016/03/04 13:00:10 CET] [INFO] RateLimiter is enabled
[2016/03/04 13:00:10 CET] [DEBG] Checking for security update from Mattermost
[2016/03/04 13:00:10 CET] [EROR] Failed to get security update information from Mattermost.Ctrl+C로 Mattermost 서버를 중지하고, ‘mattermost’ 사용자로 시작한 셸을 종료합니다:
-bash-4.2$ exit
logout
[root@mattermost ~]#Mattermost 인스턴스가 시작되지 않으면 출력을 주의 깊게 읽으십시오. config.json에서 간단한 쉼표를 잊어버려서 많은 문제를 겪었습니다. 또한 dbuser의 비밀번호에 특수 문자를 사용하지 않도록 하십시오. 특히 ‘@’ 기호는 처음에 저를 혼란스럽게 했습니다!
실수로 위 명령을 ‘ root ‘로 실행했다면 Mattermost 폴더의 권한을 다시 수정해야 합니다. 다음 명령어를 사용하십시오:
[root@mattermost ~]# chown -R mattermost:mattermost /opt/mattermost모든 것이 잘 진행되었다면 이제 계속 진행할 수 있습니다.
Mattermost를 데몬으로 설정
Mattermost를 데몬으로 설정하려면 파일을 생성하십시오.
*/etc/systemd/system/mattermost.service*다음 내용을 포함합니다:
[Unit]
Description=Mattermost
After=syslog.target network.target
[Service]
Type=simple
WorkingDirectory=/opt/mattermost/bin
User=mattermost
ExecStart=/opt/mattermost/bin/platform
PIDFile=/var/spool/mattermost/pid/master.pid
[Install]
WantedBy=multi-user.target그런 다음 다음 명령어로 데몬 파일을 다시 로드합니다:
[root@mattermost ~]# systemctl daemon-reload이제 우리는 이 서비스를 시작/중지/활성화/비활성화할 수 있습니다.
Mattermost 데몬 시작
[root@mattermost ~]# systemctl start mattermost.serviceMattermost 상태 확인
[root@mattermost ~]# systemctl status mattermost.service
? mattermost.service - Mattermost
Loaded: loaded (/etc/systemd/system/mattermost.service; disabled; vendor preset: disabled)
Active: active (running) since Fri 2016-03-04 14:03:40 CET; 4s ago
Main PID: 18573 (platform)
CGroup: /system.slice/mattermost.service
??18573 /opt/mattermost/bin/platform
...
...active (running)인지 확인하십시오!
데몬을 자동 시작으로 활성화
[root@mattermost ~]# systemctl enable mattermost.service
Created symlink from /etc/systemd/system/multi-user.target.wants/mattermost.service to /etc/systemd/system/mattermost.service.이제 Mattermost가 127.0.0.1:8065에서 수신 중인지 테스트하기 위해 다음 명령어를 실행합니다:
[root@mattermost config]# curl -s "http://127.0.0.1:8065" | grep -b "2015 Mattermost"단일 줄이 ‘2015 Mattermost’를 포함해야 합니다.
11343: 그렇다면 Mattermost 서버 인스턴스가 실행 중임을 확신할 수 있으며 계속 진행할 수 있습니다.
SELinux 관련 권한 문제 수정
CentOS7에서는 SELinux가 기본적으로 활성화되어 있습니다. 우리는 완전히 끌 수 있지만, Mattermost 서버가 실행될 수 있도록 재구성하는 것이 더 좋습니다.
다음 두 명령어를 입력하여 SELinux 권한을 수정하십시오:
[root@mattermost config]# chcon -Rt httpd_sys_content_t /opt/mattermost/
[root@mattermost config]# setsebool -P httpd_can_network_connect 1Nginx 서버 설정
우리는 Mattermost 서버 인스턴스 앞에 Nginx 서버를 배치할 것입니다.
주요 이점은:
- 포트 매핑 :80에서 :8065로
- 표준 요청 로그
- 나중에 SSL로 전환할 때 더 많은 옵션
epel-repository 활성화
Nginx는 CentOS의 기본 리포지토리에 없습니다. 따라서 먼저 epel 리포지토리를 활성화해야 합니다. 이는 간단한 작업으로, 다음을 입력하십시오:
[root@mattermost config]# yum -y install epel-release && yum updateNginx 설치
epel-release를 활성화한 후 다음 명령어로 Nginx를 간단히 설치할 수 있습니다:
[root@mattermost config]# yum -y install nginx이렇게 하면 Nginx와 모든 종속성이 설치됩니다.
Nginx 구성
Nginx를 구성하는 방법은 여러 가지가 있습니다. 이 튜토리얼에서는 포트 80에서 Mattermost 서버를 호스팅하는 매우 간단한 Nginx 설정을 만드는 방법만 보여줍니다.
Nginx 기본 구성 파일 변경
현재 nginx.conf의 백업을 생성하려면 다음을 실행하십시오:
[root@mattermost config]# cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.bak그런 다음 /etc/nginx/nginx.conf를 다음 내용으로 교체하십시오:
# For more information on configuration, see:
# * Official English Documentation: http://nginx.org/en/docs/
# * Official Russian Documentation: http://nginx.org/ru/docs/
user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;
events {
worker_connections 1024;
}
http {
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
"\"$http_user_agent\" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 65;
types_hash_max_size 2048;
include /etc/nginx/mime.types;
default_type application/octet-stream;
# Load modular configuration files from the /etc/nginx/conf.d directory.
# See http://nginx.org/en/docs/ngx_core_module.html#include
# for more information.
include /etc/nginx/conf.d/*.conf;
server {
server_name mattermost.example.com;
location / {
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;
}
}
}문서에서 언급한 대로 올바른 호스트 이름을 사용하고 있는지 확인하십시오.
구성 파일에 구문 오류가 없는지 확인하려면 다음 명령어를 실행하여 구문을 확인하십시오:
[root@mattermost config]# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
ginx: configuration file /etc/nginx/nginx.conf test is successfulNginx를 데몬으로 시작하고 활성화
Nginx 시작
[root@mattermost config]# systemctl start nginx상태 확인
[root@mattermost config]# systemctl status nginx출력이 최소한 다음과 같은 줄을 포함하는지 확인하십시오:
...
Active: active (running)...
...데몬으로 활성화
[root@mattermost config]# systemctl enable nginx
Created symlink from /etc/systemd/system/multi-user.target.wants/nginx.service to /usr/lib/systemd/system/nginx.service.모든 것이 잘 진행되었다면 이제 Nginx 뒤에서 실행 중인 Mattermost 설치가 있어야 합니다. 브라우저에서 다음 URL을 열어 확인하십시오:
Mattermost 로그인 화면이 나타나야 합니다!

이제 이메일 주소를 입력하고 계정을 생성하여 Mattermost 설치를 계속 설정할 수 있습니다.
Firewalld
이 튜토리얼에서 firewalld를 비활성화했습니다. firewalld를 다시 활성화하고 싶지만 포트 80을 열어두고 싶다면(현재 Nginx를 통해 Mattermost에 사용 중) 다음을 수행하십시오:
Firewalld 시작 및 재활성화
[root@mattermost config]# systemctl start firewalld
[root@mattermost config]# systemctl enable firewalld
Created symlink from /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service to /usr/lib/systemd/system/firewalld.service.
Created symlink from /etc/systemd/system/basic.target.wants/firewalld.service to /usr/lib/systemd/system/firewalld.service.방화벽에서 포트 80 열기
[root@mattermost config]# firewall-cmd --zone=public --add-port=80/tcp --permanent
success
[root@mattermost config]# firewall-cmd --reload
success이제 firewalld가 실행 중일 때도 Mattermost 설치에 접근할 수 있어야 합니다!
요약
이 튜토리얼이 유용하고 작동하기를 바랍니다. 프로덕션 환경에서는 Mattermost 웹사이트에 대한 인증서를 생성/사용하고 Nginx를 통해 https를 활성화해야 합니다. 이는 이 Howto를 약간 수정하여 쉽게 수행할 수 있습니다.
새 게시물을 받은 편지함에서 받기
스팸은 없습니다. 언제든지 구독 해지 가능합니다.