preamble
A previous post mentioned deploying MatterMost.
This article to document it.
About MatterMost
MatterMost is a bit of a collaboration tool like Slack, and the integration with GitLab is pretty good, and it just so happens that we've been using GitLab, so we deployed one to try it out.
MatterMost is an open source team collaboration and communication platform designed to provide businesses and organizations with a secure and controlled instant messaging solution. Compared with other instant messaging tools , MatterMost has the following significant features and advantages :
Open source and self-hosted
MatterMost is open source, which means that anyone is free to view, modify and extend its source code. Users have the option of self-hosting, which gives them complete control over their data and ensures the security and privacy of sensitive information. This is especially important for organizations with stringent data security requirements.
Multi-platform support
MatterMost supports multiple platforms, including Windows, macOS, Linux, iOS and Android, allowing users to use it seamlessly across devices. In addition, MatterMost offers a powerful web-based application that allows users to utilize all of its features without having to install client software.
Rich functionality
MatterMost offers a wide range of features to meet the needs of team collaboration, including:
- instant messaging (IM): It supports one-to-one chat and group chat, so users can communicate in real time.
- file sharing: Users can share files in conversations, supporting multiple file formats.
- videoconferencing: Integrated video conferencing feature facilitates face-to-face communication among users.
- Notifications and reminders: Flexible notification settings to ensure users don't miss important information.
- search function: Powerful search function to help users quickly find the information and documents they need.
Integration and Scalability
MatterMost has a rich set of integration features that allow it to work seamlessly with a wide range of third-party applications and services, such as Jira, GitHub, Jenkins, and more. In addition, MatterMost provides a powerful API and plug-in system that allows developers to develop customized features to further extend its functionality according to their needs.
safety
Security is one of the core strengths of MatterMost. It provides multi-layered security measures including data encryption, Single Sign-On (SSO), Multi-Factor Authentication (MFA), Role and Privilege Management, etc. to ensure the security of user data.
Community and support
As an open source project, MatterMost has an active community where users can get help, share experiences and advice.MatterMost also provides commercial support services, and users can choose different levels of technical support and services as needed.
Deploy MatterMost
Official Documentation./install/#deploy-mattermost-on-docker-for-production-use
Here's how I deployed it
Pull the project down.
git clone /mattermost/docker
mv docker mattermost
cd mattermost
modifications.env
configure
cp .env
modificationsDOMAIN
Just configure the domain name and change the rest as needed
Create a directory and set permissions
mkdir -p ./volumes/app/mattermost/{config,data,logs,plugins,client/plugins,bleve-indexes}
sudo chown -R 2000:2000 ./volumes/app/mattermost
docker compose
After clone and the creation of several folders, the directory structure looks like this
matter-most
├── contrib
├── docs
├── nginx
├── scripts
├── volumes
├──
├──
├──
├──
├──
├── LICENSE
└──
This time, we didn't change the official compose configuration
Instead, it adds a new configuration of its own
Connecting mattermost services to swag's network
services:
postgres:
container_name: mattermost_pgsql
networks:
- default
mattermost:
container_name: mattermost
ports:
- ${CALLS_PORT}:${CALLS_PORT}/udp
- ${CALLS_PORT}:${CALLS_PORT}/tcp
networks:
- default
- swag
networks:
default:
name: mattermost
swag:
external: true
activate (a plan)
sudo docker compose -f -f up -d
Accessing GitLab SSO
This one's a bit of a toss-up
It's always prompting at first.The redirect URI included is not valid.
It took a long time to look up the information, but it's still solved
First of all, there is a problem with the documentation in MatterMost, which does not allow you to create GitLab apps in the user's personal settings.
Instead, you have to go into the GitLab admin backend and create a global application to enable SSO
And then the callback address I did add these two
/signup/gitlab/complete
/login/gitlab/complete
How did you find out? GitLab itself provides MatterMost integration, see the GitLab documentation for more information./ee/integration/mattermost/
Then after I enabled this feature in the configuration, GitLab automatically created the app for me, and then I turned it off again, but still used the app, and successfully implemented the ability to log into MatterMost using GitLab ......
wrap-up
It's a lot of work.
Actually found out that MatterMost's mobile app doesn't work with playbooks... kind of a bummer!
And then these kinds of team collaboration tools, maybe it's better to use a SaaS service.
I tried wekan later, and the interface just dissuaded me.
bibliography
- /mattermost/mattermost/issues/18990
- /t/the-redirect-uri-is-not-valid-during-oauth-on-on-new-gitlab-v8-2-2-omnibus-installation/633/2