O Mattermost é uma plataforma de comunicação empresarial de código aberto concebida para a comunicação interna de equipas e organizações. Suporta chats de texto, partilha de ficheiros, chamadas de vídeo e integração com vários serviços de terceiros. O Mattermost pode ser implementado nos seus próprios servidores para um controlo e segurança completos dos dados. É uma alternativa a soluções como o Slack, com a capacidade de personalizar, automatizar e integrar com processos DevOps.
Primeiro, precisa de se ligar ao seu servidor através de SSH com o utilizador root. Execute o seguinte comando, substituindo IP_Address pelo endereço IP do seu servidor e Port_number pelo número da porta SSH:
ssh root@IP_Address -p Port_number
Para se certificar de que tem a versão correta do Ubuntu instalada, execute o comando:
lsb_release -a
Resultado esperado:
Distributor ID: Ubuntu
Description: Ubuntu 24.04 LTS
Release: 24.04
Codename: noble
Atualize o sistema operacional:
apt update
apt upgrade
Agora vamos criar uma base de dados PostgreSQL para ser utilizada pelo servidor Mattermost. Digite o comando (este comando instalará o postgresql):
apt install postgresql
Entrar no PostgreSQL:
sudo -u postgres psql
Criar uma base de dados Mattermost:
CREATE DATABASE mattermost;
Crie o utilizador mmuser (utilize uma palavra-passe mais segura em vez de mmuser-password
):
CREATE USER mmuser WITH PASSWORD 'mmuser-password';
Dar permissões ao utilizador mmuser:
GRANT ALL PRIVILEGES ON DATABASE mattermost to mmuser;
GRANT ALL ON DATABASE mattermost TO mmuser;
ALTER DATABASE mattermost OWNER TO mmuser;
GRANT USAGE, CREATE ON SCHEMA PUBLIC TO mmuser;
Sair do PostgreSQL
q
Efetuar alterações ao ficheiro pg_hba.conf, dando ao servidor Mattermost acesso à base de dados PostgreSQL.
Abra o ficheiro:
nano /etc/postgresql/16/main/pg_hba.conf
Localizar as linhas:
local all all peer
host all all 127.0.0.1/32 scram-sha-256
host all all ::1/128 scram-sha-256
Substituir por:
local all all trust
host all all 127.0.0.1/32 trust
host all all ::1/128 trust
Guarde as alterações, feche o ficheiro e actualize a configuração do PostgreSQL:
systemctl reload postgresql
Verifique se é possível ligar à base de dados a partir do utilizador mmuser:
psql --dbname=mattermost --username=mmuser --password
Introduzir a palavra-passe que criámos em vez de mmuser-password
Se tivermos feito tudo corretamente, aparecerá a consola do PostgreSQL.
Sair:
q
Descarregue a versão mais recente do servidor Mattermost:
wget https://releases.mattermost.com/10.0.1/mattermost-10.0.1-linux-amd64.tar.gz
Descompactar:
tar -xvzf mattermost*.gz
Transferir para o diretório /opt:
mv mattermost /opt
Por defeito, o servidor Mattermost utiliza o diretório /opt/mattermost/data
Crie-o:
mkdir /opt/mattermost/data
Agora crie um grupo e um utilizador mattermost:
useradd --system --user-group mattermost
Conceder permissões:
chown -R mattermost:mattermost /opt/mattermost
chmod -R g+w /opt/mattermost
Para gerir o servidor Mattermost, vamos criar um serviço de sistema.
Abra o editor para criar um ficheiro de serviço:
nano /lib/systemd/system/mattermost.service
O ficheiro aberto e vazio - preencha-o com os seguintes conteúdos:
[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=multi-user.target
Atualizar a configuração do systemd:
systemctl daemon-reload
Antes de executar o servidor Mattermost, é necessário configurá-lo.
Criar uma cópia de segurança do ficheiro de configuração:
cp /opt/mattermost/config/config.json /opt/mattermost/config/config.defaults.json
Abra o arquivo de configuração do servidor Mattermost em um editor de texto:
nano /opt/mattermost/config/config.json
Precisamos de fazer as alterações.
Localizar:
"DataSource": "postgres://mmuser:@localhost/mattermost_test?sslmode=disableu0026connect_timeout=10u0026binary_parameters=yes"
Substituir por:
"DataSource to "postgres://mmuser: <mmuser-password>@<host-name-or-IP>:5432/<mattermost>?sslmode=disable&connect_timeout=10"
Onde.
<mmuser-password>
- palavra-passe do mmuser para o PostgreSQL.
<nome do host-ou-IP>
- endereço IP do servidor ou seu nome de host.
<mattermost>
- banco de dados do PostgreSQL.
Salve o arquivo e saia do editor.
Ative o serviço para ser executado na inicialização do sistema e inicie-o agora:
systemctl enable --now mattermost
Use o comando para verificar o status do servidor:
systemctl status mattermost
Abra o <endereço IP do seu servidor ou o seu nome de anfitrião>
no seu browser : 8065
Siga as instruções na página que se abre.
O servidor Mattermost está agora instalado e a funcionar no seu servidor Ubuntu 24.04.