Mattermost 서버 설치

64비트 머신에 Mattermost 서버 설치.

Ubuntu에 Mattermost 서버 설치

  1. Mattermost 서버를 호스팅할 서버에 로그인하고 터미널 창을 엽니다.

  2. Mattermost Server의 최신 버전 을 다운로드합니다. 다음 명령어에서 X.X.X 를 원하는 버전으로 바꿉니다:

    wget https://releases.mattermost.com/X.X.X/mattermost-X.X.X-linux-amd64.tar.gz

  3. Mattermost 서버 파일을 압축 해제합니다.

    tar -xvzf mattermost*.gz

  4. 압축 해제된 파일을 /opt 디렉터리로 이동합니다.

    sudo mv mattermost /opt

  5. 파일을 저장할 디렉터리를 생성합니다.

Note

파일 및 이미지를 저장하는 디렉터리는 사용자가 Mattermost에 올린 파일과 이미지를 모두 포함하므로, 예상된 업로드 파일 및 이미지 수용량이 충분한지 확인해야 합니다.

디스크에 여분 공간이 충분한지 확인하십시오.

  1. 이 서비스를 실행할 Mattermost 사용자 및 그룹인 mattermost 를 설정하고 소유권 및 권한을 설정합니다.

  1. Mattermost 사용자 및 그룹을 생성합니다:

    sudo useradd --system --user-group mattermost

  2. Mattermost 파일의 소유자로 사용자와 그룹 “mattermost” 를 설정합니다.

    sudo chown -R mattermost:mattermost /opt/mattermost

  3. mattermost 그룹에 쓰기 권한을 부여합니다.

    sudo chmod -R g+w /opt/mattermost

  1. 파일 /opt/mattermost/config/config.json 에서 데이터베이스 드라이버를 설정합니다. 파일을 텍스트 편집기에서 열고 다음 변경 사항을 적용합니다:

  • 만약 PostgreSQL을 사용하고 있다면:

  1. "DriverName""postgres" 로 설정합니다.

  2. "DataSource" 를 다음 값으로 설정하고, <mmuser-password><host-name-or-IP> 를 적절한 값으로 바꿉니다:

"postgres://mmuser: <mmuser-password>@ <host-name-or-IP>:5432/mattermost?sslmode=disable&connect_timeout=10" .

  • 만약 MySQL을 사용하고 있다면:

  1. "DriverName""mysql" 로 설정합니다.

  2. "DataSource" 를 다음 값으로 설정하고, <mmuser-password><host-name-or-IP> 를 적절한 값으로 바꿉니다. 또한 데이터베이스 이름을 mattermost_test 가 아닌 mattermost 로 설정합니다.

"mmuser: <mmuser-password>@tcp( <host-name-or-IP>:3306)/mattermost?charset=utf8mb4,utf8&writeTimeout=30s"

  1. 또한 "SiteURL" 을 사이트의 전체 기본 URL(예: "https://mattermost.example.com" )로 설정합니다.

  2. Mattermost 서버가 모든 것이 잘 작동하는지 확인합니다.

    1. mattermost 디렉터리로 이동합니다:

    cd /opt/mattermost

    1. 사용자 mattermost로 Mattermost 서버를 시작합니다:

      sudo -u mattermost ./bin/mattermost

서버가 시작되면 일부 로그 정보와 “Server is listening on :8065” 텍스트가 표시됩니다. 터미널 창에서 Windows 또는 Linux에서는 :kbd: Ctrl :kbd: C , Mac에서는 :kbd: :kbd: C 를 눌러 서버를 중지할 수 있습니다.

  1. *systemd*를 사용하여 Mattermost를 시작 및 중지하도록 설정합니다.

  1. systemd unit 파일을 만듭니다:

    sudo touch /lib/systemd/system/mattermost.service

  2. 루트로 unit 파일을 텍스트 편집기에서 열고 다음 라인을 파일에 복사합니다:

[Unit] Description=Mattermost After=network.target After=postgresql.service BindsTo=postgresql.service

[Service] Type=notify ExecStart=/opt/mattermost/bin/mattermost TimeoutStartSec=3600 KillMode=mixed Restart=always RestartSec=10 WorkingDirectory=/opt/mattermost User=mattermost Group=mattermost LimitNOFILE=49152

[Install] WantedBy=postgresql.service

[Unit] 섹션의 2군데와 [Install] 섹션의 1군데에서 postgresql.service 를 사용 중인 경우 MySQL로 바꿔야 함에 유의하세요.

[Unit] 섹션에서 After=postgresql.serviceBindsTo=postgresql.service 또는 After=mysql.serviceBindsTo=mysql.service 를 제거하고, [Install] 섹션에서 WantedBy=postgresql.service 또는 WantedBy=mysql.serviceWantedBy=multi-user.target 로 바꿔야 합니다.

WantedBy 를 로컬 데이터베이스 서비스로 설정하면 데이터베이스 서비스가 시작될 때마다 Mattermost 서버도 시작되도록 할 수 있습니다. 이렇게 하면 데이터베이스가 자동으로 업데이트되어도 Mattermost 서버가 작동을 멈추지 않습니다.

  1. 새로운 unit을 로드하도록 systemd에 알립니다.

    sudo systemctl daemon-reload

  2. unit이 로드되었는지 확인합니다.

    sudo systemctl status mattermost.service

다음과 유사한 출력이 표시되어야 합니다:

`` ● mattermost.service - Mattermost

Loaded: loaded (/lib/systemd/system/mattermost.service; disabled; vendor preset: enabled) Active: inactive (dead) e. 서비스를 시작합니다. sudo systemctl start mattermost.service f. Mattermost가 실행 중인지 확인합니다. curl http://localhost:8065 ``

Mattermost 서버에서 반환된 HTML이 표시되어야 합니다.

  1. 시스템 시작 시 Mattermost를 시작하도록 설정합니다.

    sudo systemctl enable mattermost.service

이제 Mattermost 서버가 가동되었으므로 초기 구성 및 설정을 진행할 수 있습니다.