Linux에서 Mattermost를 설정하는 방법
리눅스 환경에서 슬랙 사용에 지치셨나요? 자체 팀 메시징 서비스를 서버에서 직접 호스팅하고 싶으신가요? 그렇다면 리눅스에 Mattermost를 설치하고 슬랙 대신 사용해 보세요. Mattermost는 슬랙과 유사한 기능을 제공하는 오픈 소스 대안입니다!
시작하기 전에
본 튜토리얼에서는 Ubuntu 서버 18.04 LTS(장기 지원) 환경에 Mattermost 서버 소프트웨어를 설치하는 데 초점을 맞출 것입니다. 따라서 리눅스 서버(또는 항상 켜져 있는 데스크톱 컴퓨터)를 준비해야 합니다. 시작하기 전에 공식 웹사이트에서 Ubuntu Server를 다운로드하여 설치하는 것이 필수적입니다.
왜 우분투 서버인가요? 우분투에 집중하는 이유는 간단합니다. 우분투는 시작하기 가장 쉬운 리눅스 서버 운영체제 중 하나이며, LTS 릴리스를 통해 최소 5년 동안 안정적인 Mattermost 서버 운영 환경을 보장받을 수 있습니다.
참고: 우분투 서버를 사용하지 않고 리눅스에서 Mattermost 서버 구성 요소를 설정하는 데 관심이 있다면, 공식 웹사이트에서 관련 도움말을 확인하실 수 있습니다.
데이터베이스 설정
Mattermost가 정상적으로 작동하려면 Ubuntu 서버에 MySQL 데이터베이스 소프트웨어가 필요합니다. 설치를 위해 터미널을 열고 SSH를 통해 서버에 접속하세요.
터미널 세션이 열리면, Apt 패키지 관리자를 사용하여 시스템에 MySQL을 설치합니다 (아직 설치하지 않은 경우).
sudo apt install mysql-server
MySQL 설치에는 시간이 다소 소요될 수 있습니다. 설치가 완료되면 보안 설치 명령을 실행하여 설치를 마무리합니다.
sudo mysql_secure_installation
MySQL이 Ubuntu 서버에 성공적으로 설치되었습니다. 다음 단계는 명령줄 인터페이스에 루트 권한으로 로그인하는 것입니다.
참고: 보안 설치 과정에서 설정한 루트 비밀번호를 사용해야 합니다.
sudo mysql
SQL 데이터베이스에 새로운 사용자를 생성합니다. 여기서는 사용자 이름을 mmuser로 설정합니다.
create user 'mmuser'@'%' identified by 'mmuser-password';
Mattermost 데이터베이스를 생성합니다.
create database mattermost;
생성한 데이터베이스에 mmuser 계정이 접근할 수 있도록 권한을 부여합니다.
grant all privileges on mattermost.* to 'mmuser'@'%';
마지막으로, MySQL 명령줄 인터페이스를 종료하고 Bash 셸로 돌아갑니다.
exit
Mattermost 서버 소프트웨어 설치
Mattermost 서버 소프트웨어는 공식 웹사이트에서 제공됩니다. wget 프로그램을 사용하여 서버에 직접 다운로드할 수 있습니다. 최신 버전의 서버 소프트웨어를 다운로드하려면 터미널을 열고 다음 명령을 실행하십시오.
참고: Mattermost는 여러 버전으로 제공됩니다. 이 가이드에서 사용하는 것보다 최신 버전이 필요하다면, 공식 다운로드 페이지에서 원하는 버전을 확인하고 아래 명령에서 해당 링크로 변경하십시오.

wget https://releases.mattermost.com/5.5.0/mattermost-5.5.0-linux-amd64.tar.gz
서버 소프트웨어가 Ubuntu 서버에 다운로드되면, TarGZ 아카이브의 압축을 해제합니다.
tar -xvzf mattermost*.gz sudo mv mattermost /opt sudo mkdir /opt/mattermost/data
Mattermost 서버 구성
서버 소프트웨어가 Ubuntu에 설치되었지만, 올바르게 구성되기 전까지는 실행되지 않습니다. 구성 작업은 먼저 Mattermost 서비스를 실행할 사용자를 생성하는 것부터 시작합니다.
sudo useradd --system --user-group mattermost
새로운 Mattermost 사용자에게 Mattermost 서버 소프트웨어에 대한 모든 접근 권한을 부여합니다.
sudo chown -R mattermost:mattermost /opt/mattermost sudo chmod -R g+w /opt/mattermost
사용자 설정이 완료되었습니다. 이제 Mattermost에 사용할 데이터베이스 정보를 알려주어야 합니다. 터미널 창에서 Nano 에디터로 다음 파일을 엽니다.
sudo nano /opt/mattermost/config/config.json
파일에서 다음 코드를 찾습니다.
“mmuser:[email protected](dockerhost:3306)/mattermost_test?charset=utf8mb4,utf8&readTimeout=30s&writeTimeout=30s”
구성 파일에서 위의 코드를 삭제하고, 아래 코드와 같이 변경합니다.
참고: 'mmuser-password'를 이전에 설정한 mmuser SQL 비밀번호로 변경하고, 'host-name-or-IP'에는 서버의 호스트 이름 또는 IP 주소를 입력해야 합니다.
“mmuser:
모든 편집이 완료되었다면, Mattermost를 실행하여 제대로 작동하는지 확인해야 합니다.
cd /opt/mattermost sudo -u mattermost ./bin/mattermost
서버가 정상적으로 실행된다면, Ctrl + C를 눌러 종료합니다.
Mattermost 시스템 서비스 생성
Mattermost가 사용자 상호 작용 없이도 실행될 수 있도록 시스템 서비스 파일을 생성해야 합니다. 터미널에서 touch 명령을 사용하여 새로운 systemd 서비스를 만듭니다.
sudo touch /lib/systemd/system/mattermost.service
Nano 에디터로 새 서비스 파일을 엽니다.
sudo nano /lib/systemd/system/mattermost.service
아래 코드를 Nano에 붙여 넣습니다.
[Unit]
Description=Mattermost
After=network.target
After=mysql.service
Requires=mysql.service
[Service]
Type=notify
ExecStart=/opt/mattermost/bin/mattermost
TimeoutStartSec=3600
Restart=always
RestartSec=10
WorkingDirectory=/opt/mattermost
User=mattermost
Group=mattermost
LimitNOFILE=49152
[Install]
WantedBy=mysql.service
Ctrl + O를 눌러 변경 내용을 저장하고, Ctrl + X를 눌러 Nano를 종료합니다. 그런 다음, 새로운 Mattermost 시스템 서비스를 로드합니다.
sudo systemctl daemon-reload sudo systemctl start mattermost.service sudo systemctl enable mattermost.service
Mattermost 접속하기

Mattermost 서버가 실행 중입니다. 다음 URL을 통해 접속하여 서비스를 이용할 수 있습니다.
https://localhost:8065
또는, Snap 패키지를 이용하여 설치하는 방법도 있습니다. 아래 명령어를 사용하여 Mattermost 데스크톱 클라이언트를 설치할 수 있습니다.
sudo snap install mattermost-desktop