반응형

안녕하세요 가야태자 @talkit 입니다. 

요즘 Slack에 관심이 있었는데 Slack이 유료라서 Mattermost에 관심을 두고 있습니다. 

그런데, 하나 하나 해보고 있는데 gitlab.com 이라고 github와 비슷한 git 저장소 서비스의 플러그인을 설정해 보겠습니다. 

저는 주로 gitlab을 사용하는 이유가 처음 사용해서 라고 해야할까요^^

마이크로소프트에 인수 되기 전까지 github는 폐쇄 소프트웨어는 유료로 저장소를 사용해야 했습니다. 

요즘은 폐쇄도 가능한 것으로 알고 있습니다. 

하지만, gitlab은 무료인데 폐쇄 소프트웨어 즉 회사 소스 관리를 할 수 있게 해주었습니다. 

그래서 사용하게 되었고 지금도 사용하고 있습니다. 

그래서 gitlab과 제가 설치한 mattermost를  연동 하고 싶었습니다. 

우선 설치는 관리자 아이디로 접속하고, 채널에 접속 합니다. 

그리고, 저위에 보시면 바둑판 아이콘을 클릭하고 Marketplace를 클릭합니다. 

그러면 이 비슷한 모양이 나옵니다.

저기서 현재는 2페이지에 gitlab plugin이 들어 있습니다. 

제가 설치하려고 하는 GitHub/GitLab/Jenkins 까지 모두 들어 있습니다. ^^

설치는 제가 GitLab을 설치해버려서 ^^ 다른 플러그인 처럼 Install 누르시면 됩니다. 

이제 Configuration을 해야 합니다. 

Configure 버튼을 클릭하면

위 그림 처럼 플러그인 설정화면으로 이동 합니다. 

https://gitlab.com/-/profile/applications. 이 주소를 클릭 하셔서 gitlab으로 이동 합니다. 

로그인이 안되어 있으면 로그인 하시고 ^^

위와 비슷한 화면이 나타날텐데요 ^^ Name에 Mattermost - 회사명 정도를 넣으라고 되어 있네요 ^^

https://your-mattermost-url.com/plugins/com.github.manland.mattermost-plugin-gitlab/oauth/complete, replacing https://your-mattermost-url.com

그리고 Redirect URI는 저기서 your-matter-url.com을 여러분의 도메인으로 바꾸면 되는 것 같습니다. 

저는 변경 했습니다. 

그리고, api, read_user 를 선택 합니다. 

Save application을 클릭하십시오.

위 화면이 나오면 Application ID하고 Secret 를 각각 복사해 둡니다. 

저는 복사를 해두었습니다. 

그리고 Mattermost 설정화면으로 돌아 오십시오.

이 화면으로 돌아 오셔야 합니다. ^^

Enable Plugin 을 true로 합니다. 

 그리고 Gitlab URL, Oauth Client ID, Secret를 아까 복사해둔 두개와 주소는 셀프호스트 아니면 저대로 두시면 됩니다. 

그리고 나서 Webhook Secret 과 At Rest Encryption Key 아래에 Regenerate 를 각각 클릭 합니다. 

채널로 돌아가셔서

채널 상에다가 

/gitlab connect

이렇게 하시면 링크가 하나 나오는데 이링크를 클릭 하십시오

Shift 누르고 클릭하시는 것이 좋습니다. 

지금은 주확색인데 인증 버튼을 한번 눌러 줍니다. 

그러면 인증을 시작 합니다. 

끝나면, 돌아오는데 창을 닫으라고 하면 닫으십시오.

/gitlab subscriptions add userid/[그룹또는프로젝트] issues,merges,pushes,issue_comments

잘되었는데 성공했다는 메시지가 나옵니다. 

/gitlab webhook add userid/그룹또는프로젝트명

식을 뜹니다. 

저걸 다시 채팅창에 쳐 주십시오.

웹 훅이 만들어 졌구요.

Readme를 Push 해보겠습니다. ^^

요렇게 잘 나옵니다. 

Slack를 왜 쓰는지 이제 알겠습니다. 

오늘은 여기까지하고 또 다른 Mattermost글을 써보겠습니다. 

관련글 

리눅스/Linux Slack 대체 프로그램 Mattermost를 설치해보자. How to install Mattermost on Ubuntu Linux https://talkit.tistory.com/695

리눅스/Linux Mattermost https로 운영하기 How to setup mattermost via https on ubuntu https://talkit.tistory.com/704

리눅스/Linux Mattermost 구글 메일서버와 Email 알림 설정하기. How to setup Google SMTP & email notification. https://talkit.tistory.com/705

리눅스/Linux Mattermost 회원가입 초대 가능하게 하기. How to setup enable account creation. https://talkit.tistory.com/708

 

반응형
반응형

안녕하세요 가야태자 @talkit 입니다. 

오늘 Mattermost에서 알아볼 것은 간단 합니다. 

지금 현재까지는 아마 찾으신 분들도 있겠지만, 제 강의를 따라 오셨다면, 채팅방에 혼자 계셨을 가능성이 있습니다. 

오늘은 채팅창에 여러명을 초대 할 수 있도록 만들어 보겠습니다. 

짧다고 말씀 드린 이유는 위그럼이 다여서 그렇습니다. ^^

우선 젤 위에 Enable Account Creation 이 true로 되어 있어야 합니다. 

Enable Open Server를 true로 주면 저는 위험하다고 생각이 되어서 ^^

Enable Email invitations 만 true로 줬습니다. 

저렇게 하고 아래 저장 버튼을 클릭하시면 끝입니다. 

그리고 채널로 돌아가서 앗 채널 만들어기를 설명을 안드렸나요 T.T

다음에 또 글을 적겠습니다. 

Invite Members를 클릭하시고

To에다가 초대할 이메일 넣으시고 Invite 또는 초대를 누르시면

다시 Invite 눌러주시면 됩니다. 

그러면, 메일을 셋팅 하셨다면 ^^

초대 메일이 Email 주소 소유자 분에게 갈꺼고 그분이 가입해서 아이디를 만드는 식입니다. ^^

이런식으로 초대된 사용자들과 대화가 가능 합니다. 

관련글

리눅스/Linux Slack 대체 프로그램 Mattermost를 설치해보자. How to install Mattermost on Ubuntu Linux :: 가야태자의 IT이야기 (tistory.com)

 

리눅스/Linux Slack 대체 프로그램 Mattermost를 설치해보자. How to install Mattermost on Ubuntu Linux

안녕하세요 가야태자 @talkit 입니다. 이번 글에서는 제가 지난 번에 리눅스를 설치 하면서 뭔가를 설치해보고자한다고 말씀 드렸는데 그것 중에 하나가 Mattermost라는 툴입니다. 이툴은 Slack이라는

talkit.tistory.com

리눅스/Linux Mattermost https(SSL)로 운영하기 How to setup mattermost via https(SSL) on ubuntu :: 가야태자의 IT이야기 (tistory.com)

 

리눅스/Linux Mattermost https(SSL)로 운영하기 How to setup mattermost via https(SSL) on ubuntu

안녕하세요 가야태자 @talkit 입니다. 리눅스/Linux Slack 대체 프로그램 Mattermost를 설치해보자. How to install Mattermost on Ubuntu Linux https://talkit.tistory.com/695 위글에 이어서 ^^ 지금 현재 저는 성공 했습니

talkit.tistory.com

리눅스/Linux Mattermost 구글 메일서버와 Email 알림 설정하기. How to setup Google SMTP & email notification. :: 가야태자의 IT이야기 (tistory.com)

 

리눅스/Linux Mattermost 구글 메일서버와 Email 알림 설정하기. How to setup Google SMTP & email notification.

안녕하세요 가야태자 @talkit 입니다. 일단 NGINX 관련 설정을 제외하고는 거의 끝났습니다. 이제 Email 알림을 동작하도록 해보겠습니다. 우선 Email은 메일서버가 있어야지 구동이 가능합니다. 그래

talkit.tistory.com

 

반응형
반응형

안녕하세요 가야태자 @talkit 입니다. 

일단 NGINX 관련 설정을 제외하고는 거의 끝났습니다. 

이제 Email 알림을 동작하도록 해보겠습니다. 

우선 Email은 메일서버가 있어야지 구동이 가능합니다. 

그래서 SMTP서버를 구축을 할 수도 있겠지만, SMTP서버를 구축 하려면, 

1. 고정IP

2. 도메인

3. 서버설정

4. 화이트리스트 등록

등을 진행 해야해서 패스하고, 단 회사에서 SMTP 서버를 미리 운영하고 계신다면 가능 합니다. ^^

여기서는 Google SMTP 서버를 활용하는 방법을 알려드리겠습니다. 

일단 System Console에 접속합니다. 

ENVRIONMENT에서 SMTP를 클릭해서 보시면 위와 비슷하지만, 다르게 되어 있을 겁니다. 

1) SMTP서버는 smtp.gmail.com으로 변경 합니다.

2) 포트는 587로 변경 합니다. 

3) Enable SMTP Authenication 을 true 로 당연히 변경 하셔야 하구요.

4) SMTP Server Username 을 gmail 아이디를 넣습니다. 

5) SMTP Server Password는 gmail 앱 비밀번호를 넣어야 하는데 잠시 뒤에 설명해 드리겠습니다. 

6) Connection Security는 STARTTLS를 선택 합니다. 

여기까지 선택하시면 SMTP 설정은 끝났습니다. 

Gmail 초창기에는 Gmail 패스워드로 밖에서 SMTP를 이용할 수 있었는데요. 지금은

안됩니다. 

Gmail SMTP 앱 비밀번호 설정하기

https://myaccount.google.com/

 

Google 계정

Google은 사용자마다 원하는 개인정보 보호 설정이 다르다는 사실을 인지하고 있습니다. 그래서 Google 계정에서는 사용이 간편한 컨트롤과 개인정보 보호 진단 같은 도구를 제공합니다. 이런 도구

www.google.com

Google 계정에 접속을 합니다. 

접속하셔서 왼쪽에 보안을 누르십시오.

Google에 로그인을 찾으셔서 앱비밀번호를 클릭 하십시오.

그러면 계정 비밀번호를 묻습니다.

로그인 하시구요.

저는 이미 생성해서 생성했다가 지워 버릴 것입니다. ^^

앱 선택이라고 되어 있는 콤보박스에서 메일,  기기선택에서 기타(맞춤기기)를 선택하시구요. 

생성 버튼을 누릅니다.

저기 안에 노란색 상자 안에 비밀번호가 있습니다. 복사를 하십시오.

System Console의 SMTP Server Password 란에 붙여 넣으시면 됩니다. 

이게 16자리 비밀번호 이고 16자라가 다 붙어 있습니다. 복사하면 구글에서 자동으로 해주는 것 같습니다. 

그리고 저장하신 다음에 Test Connection을 눌러 보시면 저는 잘 접속이 되었습니다. 

그러면 된 것입니다. 

 알람 설정하기

이제 System Console의 SITE CONFIGURATION 메뉴에서 Notifications를 클릭하십시오.

위 그림과 같이 만들어야 합니다. 

1) Show 블라블라는  true

2) Enable Email Notification 은 true 당연하겠지만, 위의 SMTP설정을 하지 않으면 불가능 합니다. 

3) Notification Display Name 은 저는 그냥 소프트웨어 이름 + Notification으로 했습니다. 

4) Address 로 끝나는 아이들은 전부 제 개인메일로 설정 했습니다. 지인 또는 가족들하고 쓸꺼라서요 ^^

Push Notification Contents는 Full 블라블라로 선택해두었습니다. 

그리고 Save 해주시면 됩니다. 

설정을 하고 저렇게 쳤습니다. ^^

오 예쁘게 메일이 왔습니다. ^^

그런데 ,^^  Footer 부분을 조금 손을 대야 할 것 같습니다. 

저주소를 바꾸는 부분이 없네요 조금 살펴 봐야 할 것 같습니다. 

여기까지 되셨으면 잘 된겁니다. 

감사합니다. 

 

반응형
반응형

안녕하세요 가야태자 @talkit 입니다.

이번 글에서는 제가 지난 번에 리눅스를 설치 하면서 뭔가를 설치해보고자한다고 말씀 드렸는데 그것 중에 하나가 Mattermost라는 툴입니다.

이툴은 Slack이라는 협업도구(?)를 대체하는 프로그램 입니다.

Mattermost는 Slack과 마찬가지로, 웹사이트에서 가입해서 사용할 수 있습니다.

하지만, Slack과는 다르게 Self-managed server를 제공 합니다.

그래서 저는 테스트 겸 제가 셋팅해 놓은 VMWARE ubuntu에 그리고 궁극적으로 외부의 VPS에 설치하고자 합니다.

Mattermost 설치전으로 되돌릴수 있도록 백업을 하고 있습니다. ^^

zip파일로 VM폴더를 묶어 두면 나중에 복원하거나 다른 것을 해볼 때 사용 가능 합니다.

이부분은 다음에 VMWARE 백업 이라는 주제로 한번 글을 써보겠습니다.

오늘은 Mattermost 설치에 주안점을 두겠습니다.

Mattermost 공식 홈페이지에는 기본적으로 docker를 이용해서 설치하고 사용하는 법을 알려 주고 있습니다. 그런데 제가 docker잘 모릅니다. T.T

그래서 일단 Ubuntu에 직접 설치하는 것을 생각하고 있습니다.

순서를 조금 요약해보겠습니다.

1. Ubuntu 설치
2. Database 설치
3. Mattermost server 프로그램 설치
4. Mattermost server 프로그램 설정
5. Mattermost server 상에 TLS 설정
6. NGINX server 설치
7. Mattermost server를 위한 proxy로 NGINX 설정
8. SSL과 HTTP/2와 함께 NGINX 설정

공식 매뉴얼에 나오 있는 것은 위와 같습니다.

1. Ubuntu 설치


리눅스/Linux VMWARE에 우분투/Ubuntu 20.04 설치하기/Install https://talkit.tistory.com/677

위 글로 대체 하겠습니다.

2. Database 설치


리눅스/Linux 우분투 리눅스에 MySQL을 설치해보자. How to install MySQL on Ubuntu https://talkit.tistory.com/680

MySQL 설치도 위글로 대체 하겠습니다. ^^

설치가 끝나면 계정 설을 해야 합니다.

sudo mysql -u root -p

# 프롬프트가 등장하면

create user 'mmuser'@'%' identified by 'mmuser-password';

mmuser는 그대로 두시고, mmuser-password 를 원하는 비밀번호로 변경해서 진행 하시면 되는데 보안상 호스트가 %인것은 위험한데 저건 일단 오늘은 설치해보고 보관 관련 이슈는 한번 다뤄 보겠습니다.

Mattermost를 위한 데이터베이스를 하나 만듭니다.

create database mattermost;

mattermost 데이터베이스에 mmuser에게 권한을 줍니다.

 grant all privileges on mattermost.* to 'mmuser'@'%';

여기도 모든 권한을 줘서 보안 관련 이슈를 말씀 드리겠습니다.

그런데 저렇게 설정하면 나중에 보안 문제 빼고는 편안 합니다. ^^

설정 다하셨으면 MySQL은 빠져 나오시면 됩니다.

3. Mattermost server 프로그램 설치

Deploy Your Self-Hosted Mattermost Server | Mattermost

 

Deploy Your Self-Hosted Mattermost Server | Mattermost

Deploy a Mattermost server in minutes on the platform of your choice including Kubernetes, Ubuntu, Debian, Red Hat, and Docker.

mattermost.com

위 URL에서 최신 버전의 Mattermost 서버를 다운로드 합니다. 

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

위 명령어를 내리면, 다운로드를 진행 합니다. 

tar xzvfp mattermost-7.5.2-linux-amd64.tar.gz

받은 파일의 압축을 푸십시오.

sudo mv mattermost /opt

압축을 /opt 로 옮기라고 되어 있습니다. 그래서 저는 따라하는 중입니다. 

sudo mkdir /opt/mattermost/data

데이타 폴더를 만드라네요 ^^

sudo useradd --system --user-group mattermost

mattermost 리눅스 계정을 만들라고 합니다. 

sudo chown -R mattermost:mattermost /opt/mattermost

mattermost 계정에 프로그램 폴더를 권한을 줍니다. 

sudo chmod -R g+w /opt/mattermost

그룹에 쓰기권한을 주네요 ^^

/opt/mattermost/config/config.json

위 파일을 수정해야 합니다. ^^

sudo vi /opt/mattermost/config/config.json
 "SqlSettings": {
    "DriverName": "postgres",
    "DataSource": "postgres://mmuser:mostest@localhost/mattermost_test?sslmode=disable\u0026connect_timeout=10\u0026binary_parameters=yes",
    "DataSourceReplicas": [],
    "DataSourceSearchReplicas": [],
    "MaxIdleConns": 20,
    "ConnMaxLifetimeMilliseconds": 3600000,
    "ConnMaxIdleTimeMilliseconds": 300000,
    "MaxOpenConns": 300,
    "Trace": false,
    "AtRestEncryptKey": "",
    "QueryTimeout": 30,
    "DisableDatabaseSearch": false,
    "MigrationsStatementTimeoutSeconds": 100000,
    "ReplicaLagSettings": []
  },

config.json을 열면, SqlSettings 가 있습니다. 
기본적으로 PostgreSQL로 되어 있네요

 "SqlSettings": {
    "DriverName": "mysql",
    "DataSource": "mmuser:비밀번호1@tcp(127.0.0.1:3306)/mattermost?charset=utf8mb4,utf8\u0026writeTimeout=30s"",
    "DataSourceReplicas": [],
    "DataSourceSearchReplicas": [],
    "MaxIdleConns": 20,
    "ConnMaxLifetimeMilliseconds": 3600000,
    "ConnMaxIdleTimeMilliseconds": 300000,
    "MaxOpenConns": 300,
    "Trace": false,
    "AtRestEncryptKey": "",
    "QueryTimeout": 30,
    "DisableDatabaseSearch": false,
    "MigrationsStatementTimeoutSeconds": 100000,
    "ReplicaLagSettings": []
  },

위와 같이 변경 합니다. 앞에서 그대로 따라하셨으면 비밀번호만 변경해주시면 됩니다. 

그리고 저장 하고 빠져 나갑니다. 

    "SiteURL": "http://원하는주소",

SiteURL을 위와 같이 변경 하십시오.

https로 변경 하겠지만, ^^ http:// 로 여기서는 설정 합니다. 

이제 거의 설치가 끝난 것 같습니다. ^^

cd /opt/mattermost

저희가 설치한 디렉토리로 이동 합니다. 

sudo -u mattermost ./bin/mattermost

서버를 실행 합니다. 두둥.

뭔가 서버는 잘 떴구요.

이 화면이 나오면 잘된겁니다. 

일단 저는 웹브라우져로 접속해 보겠습니다. 

처음 가입 시키는 아이디가 system_admin 권한을 가진답니다. 

^^

첫번째 아이디는 어디서 만들지를 고민 하고있었습니다. T.T

여기서 하면 되네요.

Email address는 이메일 주소이고,

Username은 이름이 아니고 T.T 계정입니다. 띄워쓰기 없이 계정으로 만드십시오.

비밀번호는 잘 만드십시오.

Team이 없으니 가입 하라고 나옵니다. ^^

Go to system console을 눌러서 들어간 화면 입니다. ^^

여기까지 보셨으면 ^^ 빠져 나옵니다 

PuTTY로 돌아가서 Ctrl + c 키를 누르면 서버가 꺼집니다. 

그런데 매일 매일  Shell 상에 저 서버를 띄워 둘수는 없습니다. ^^

그래서 system 서비스로 만들어야 합니다. 

sudo touch /lib/systemd/system/mattermost.service
[Unit]
Description=Mattermost
After=network.target
After=mysql.service
BindsTo=mysql.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=mysql.service

vi 를 이용해서 위 파일열 여시고 붙여 넣으시면 됩니다. 

단, Ubuntu 이고, 제가 위에 설명한대로 따라하셨다는 전제 하에서 입니다 .^^

설치 위치는 변경 해주셔야 합니다. 혹시 다르게 설치 하셨으면요 ^^

서버를 자동으로 켜기 위해서 

sudo systemctl enable mattermost

서비스를 실행 합니다. 

sudo systemctl start mattermost

그럼 설치는 여기 까지 하고, 웹에서 Email 노티피케이션하고, 초대 가능하게 하기 등 몇가지 설정하상은 다음 글에서 설명 드리겠습니다. 

감사합니다. 

 

반응형

+ Recent posts