前言

不知不觉【实用的开源项目】系列已经来到第四期了啊。今天为大家介绍一下 Mattermost ,教大家使用云服务器部署 Mattermost ,简洁、强大的私人书籍管理系统!
这篇文章是详细的文字版,若希望查看教程视频,请向下滑动,查看视频,或者直接到 BiliBili 搜索 我是小俊呀 ,查找视频哦!

视频教程

待补充

准备工作

  1. 【必需】一台服务器(推荐腾讯云轻量应用服务器 HK 或国内,其他服务器、家里云或者各家企业的私有云亦可,我们在腾讯云轻量应用服务器重装系统的时候,选择 应用镜像 ,然后选择 Docker CE 19.03.9 ,然后我们就可以使用 Docker 部署搭建了我们需要的程序啦!本文就从安装完 Docker 后开始教程啦!当然啦,不使用腾讯云轻量应用服务器的朋友们,可以自己手动安装 Docker ,然后进入我们的部署哦!本文就从安装完 Docker 后开始教程啦!
  2. 【建议且必需】域名一枚,并解析到服务器上
  3. 【必需反向代理本教程选用NPM】安装好Nginx Proxy Manager( 相关教程 )

注意

本文软件基于腾讯云轻量应用服务器安装,无建议配置,教程使用的腾讯云轻量应用服务器系统为 CentOS 7.6 64位 !理论上腾讯云轻量应用服务器为 Docker CE 19.03.9 的服务器操作应与本文基本一致(包括过程与报错),其他系统为 CentOS 7 的服务器应与本文大同小异!
腾讯云轻量应用服务器快到两周年了,活动力度很大喔!大家可以关注一下!

腾讯云轻量应用服务器购买地址: https://curl.qcloud.com/XqKjWCYA

腾讯云精选爆品 特惠抢购: https://curl.qcloud.com/UEBvnJfH

腾讯云云产品特惠专区: https://curl.qcloud.com/TPJfrddE

界面演示

Mattermost 简介

Mattermost is an open source platform for secure collaboration across the entire software development lifecycle. This repo is the primary source for core development on the Mattermost platform; it’s written in Go and React and runs as a single Linux binary with MySQL or PostgreSQL. A new compiled version is released under an MIT license every month on the 16th.

Mattermost是一个开源平台,用于在整个软件开发生命周期中实现安全协作。此存储库是 Mattermost 平台上核心开发的主要来源;它是用围棋和反应编写的,并作为一个带有MySQL或后格雷SQL的 Linux二进制文件运行。每月16日在MIT许可证下发布新的编译版本。

我觉得, Mattermost 不仅可以作为一款强大的开发人员协作平台,还可以作为一款优秀的聊天室程序!

官方网站

官方网站: https://mattermost.com/

官方Github: https://github.com/mattermost

部署 Mattermost

1. 环境准备

1. 安装 Docker(使用腾讯云轻量应用服务器可跳过这一部分)

安装 Docker 的详细教程小俊之前也写过哦,也配有详细的视频版本,需要学习的朋友可以点击链接:【教程】CentOS系统Docker的详细安装教程https://www.smalljun.com/archives/3174.html

2. 安装 Nginx Proxy Manager(必需反向代理本教程选用NPM)

安装 Nginx Proxy Manager 的详细教程小俊之前也写过哦,也配有详细的视频版本,需要学习的朋友可以点击链接:【教程】使用腾讯云轻量应用服务器搭建Nginx Proxy Manager,优美简单地解决反向代理!https://www.smalljun.com/archives/3113.html ,当然想要使用反向代理的小伙伴要是熟悉 Nginx ,也可以自己安装 Nginx 进行反向代理哦!

3. 安装 Docker-compose

安装 Docker-compose 的详细教程可以参考小俊之前写过的【教程】CentOS系统Docker的详细安装教程https://www.smalljun.com/archives/3174.html#toc_23

2. 部署 Mattermost

1. 新建目录

执行以下命令,新建各个目录,并给予权限

mkdir -p /opt/docker/mattermost && cd /opt/docker/mattermost
mkdir -p /opt/docker/docker_data/postgresql/data && mkdir -p /opt/docker/docker_data/mattermost/{config,data,logs,plugins,client/plugins,bleve-indexes}
chmod -R 777 /opt/docker/docker_data/mattermost/config

2. 新建docker-compose.yaml文件

执行以下命令,新建 docker-compose.yaml 文件

vi docker-compose.yaml

然后输入以下配置内容

---
version: "3"
services: mattermost: depends_on: - postgresenv_file: - .envimage: "mattermost/mattermost-team-edition:7.3"pids_limit: 200ports: - "8065:8065"read_only: falserestart: unless-stoppedsecurity_opt: - "no-new-privileges:true"tmpfs: - /tmpvolumes: - "/opt/docker/docker_data/mattermost/config:/mattermost/config:rw"- "/opt/docker/docker_data/mattermost/data:/mattermost/data:rw"- "/opt/docker/docker_data/mattermost/logs:/mattermost/logs:rw"- "/opt/docker/docker_data/mattermost/plugins:/mattermost/plugins:rw"- "/opt/docker/docker_data/mattermost/client/plugins:/mattermost/client/plugins:rw"- "/opt/docker/docker_data/mattermost/bleve-indexes:/mattermost/bleve-indexes:rw"postgres: env_file: - .envimage: "postgres:14.5"pids_limit: 100read_only: truerestart: unless-stoppedsecurity_opt: - "no-new-privileges:true"tmpfs: - /tmpvolumes: - "/opt/docker/docker_data/postgresql/data:/var/lib/postgresql/data"- "lock:/var/run/postgresql"
volumes: lock: ~

如下图所示

注意:docker-compose.yaml 文件中 8065 为暴露端口,如被占用,请自行更改替换,需要在云服务器的控制台防火墙开放相应端口!

3. 新建.env文件

执行以下命令,新建 .env 文件

vi .env

然后输入以下配置内容

POSTGRES_DB=mattermost
#一般不用修改,可自定义
POSTGRES_USER=smalljun
#设置一个自定义的数据库用户名以替换smalljun
POSTGRES_PASSWORD=xjpassword
#设置一个自定义的数据库密码以替换xjpassword
MM_SQLSETTINGS_DRIVERNAME=postgres
MM_SQLSETTINGS_DATASOURCE=postgres://smalljun:xjpassword@postgres:5432/mattermost?sslmode=disable&connect_timeout=10
#设置一个自定义的数据库用户名以替换smalljun,设置一个自定义的数据库密码以替换xjpassword
MM_BLEVESETTINGS_INDEXDIR=/mattermost/bleve-indexes
MM_SERVICESETTINGS_SITEURL=https://chat.ymzsl.com
#设置你用于该业务的域名以替换https://chat.ymzsl.com

如下图所示

3. 启动容器

输入执行以下命令后台启动容器

docker-compose up -d

如下图所示

输入执行以下命令确认所有容器都是 runningup 状态

docker-compose ps

如下图所示

3. 配置反向代理

进入 Nginx Proxy Manager ,点击 Hosts ,然后点击 Add Proxy Host,按下图进行配置,下图中的 172.17.0.1 可能有所不一,请执行 ip addr 自行查找 docker0 网卡的内网IP!

Domain Names:填写你想用在该程序的域名
Scheme:默认http #一般不用改
Forward Hostname / IP:172.17.0.1 #一般为 `172.17.0.1` ,可能有所不一,请执行 `ip addr` 自行查找 `docker0` 网卡的内网IP!
Forward Port:8065 #暴露端口(若跟着本文未修改 `yaml` 文件中的暴露端口。应为 `8065` )

如下图所示

至此,我们已经安装完成 Mattermost 开发人员协作平台系统啦!
浏览器访问您刚刚设置的域名即可访问!
Ps:需要在腾讯云轻量应用服务器的后台防火墙开放相应端口!默认需要开放 80 tcp81 tcp 哦。

2. 简单配置 Mattermost

打开浏览器,输入你的域名即可进入 Mattermost

然后,创建首个用户(成为管理员)。

然后,可以选择创建团队或者进入系统控制台。

进入系统控制台之后,在 SITE CONFIGURATION 找到 Localization ,即可修改默认语言,可以修改为中文!

进入系统控制台之后,在 AUTHENTICATION 找到 Signup ,然后把 Enable Open Server 改为 true 即可开放注册!

至此,你已经可以开开心心地使用 Mattermost 开发人员协作平台啦!赶紧拉上自己的朋友一起玩吧!

【实用的开源项目】使用云服务器部署Mattermost,强大的开发人员协作平台,更是一款高大上的聊天室相关推荐

  1. 【实用的开源项目】使用服务器部署Sharry:真的很好用的文件分享程序

    前言 [实用的开源项目]系列出到第五期了鸭.小俊因为上学以及其他事务的原因已经快三个月没有更新了,那今天为大家介绍一下 Sharry 这一款文件分享程序吧,这篇文章是详细的文字版,若希望查看教程视频, ...

  2. 【实用的开源项目】使用服务器部署memos,一款拥有社交功能的、好看的自托管备忘录

    前言 就快要2023年啦,这是[实用的开源项目]系列的第六期了诶,这一期给大家介绍一下 memos 这一款拥有社交功能的自托管备忘录,这篇文章是详细的文字版,若希望查看教程视频,请向下滑动,查看视频, ...

  3. 【实用的开源项目】使用服务器部署Whiteboard,一个轻量级、可轻松定制的协作白板

    1. 前言 平时小俊白板用的挺多的,前两天在学校就想着有没有一个轻量化的在线白板(?于是小俊搜寻了一番,还真找到一个名字叫 Whiteboard 的基于 MIT 许可开源的一个项目,安装体验一番之后, ...

  4. SpringBoot项目的云服务器部署

    1.场景还原 springboot配置相当简单,人人皆知.怎么把springboot工程部署到云服务器上呢?可能有人会说,博主你前篇不是讲了java工程的云部署把:但是我想澄清一点的是,我前篇的工程都 ...

  5. 【实用的开源项目】使用云服务器部署TaleBook,简洁、强大的私人书籍管理系统!

    前言 第三期[实用的开源项目]教程为大家介绍一下 TaleBook ,教大家使用云服务器部署TaleBook,简洁.强大的私人书籍管理系统! 这篇文章是详细的文字版,若希望方便查看视频,请向下滑动,查 ...

  6. 云服务器部署项目环境搭建

    云服务器部署项目环境搭建 这里以阿里云为例: 一.安装JavaJDK 指令: yum -y install java-1.8.0-openjdk* 二.下载部署TomCat 去TomCat官网下载:T ...

  7. 快速部署web项目上线云服务器

    快速部署web项目上线云服务器 一.第一步登录腾讯云 1.登录腾讯云后,先购买或者在最新活动中免费领取一个十五天的云服务器产品 2.然后点击头像 3.在云产品选项中选择你需要的云服务器或轻量级应用服务 ...

  8. 云服务器部署项目:vue-cli 部署服务配置

    云服务器部署项目:vue-cli 部署服务配置 ​ 单页面应用应该放到nginx或者apache.tomcat等web代理服务器中,同时要根据自己服务器的项目路径更改vue的路由地址. ​ 如果说项目 ...

  9. 搭建前后端分离主流项目完整步骤——在线教育系统(阿里云服务器部署上线)

    前言: 需要源码评论或私我 项目技术栈如下图所示: 本次博客分前后端+部署服务器三个步骤来写 先来看看实现效果: 在线教育系统完整三步骤 前言: 一.后端技术栈 1.ssm+mysql: (1)map ...

最新文章

  1. Java并发:分布式应用限流 Redis + Lua 实践
  2. 文件系统_文件系统基础总结
  3. NETMerger - DotNet 组件(dll或exe)合并
  4. 普通管理类程序开发之难度系数、层次之说法,可以看看自己停留在哪个层次,不足之处,请大家一起补充...
  5. Java基础——异常处理
  6. 【Matlab 图像】 app designer
  7. python3.8图片_python3.8.3官方中文文档[PDF][CHM][31.14MB]
  8. 常见Java错误的十大列表(前100名!)
  9. [Java学习资料] [成长之路]
  10. nginx+uwsgi部署Django
  11. 攻占CNS!4篇Science+2篇Nature+1篇Cell,2019年内地学者开门红
  12. 1910101811-2
  13. 三星Galaxy Fold中国区发布会临时取消:推迟时间未定 彻查屏幕问题
  14. 14.Xcode8imageview图片圆角不显示的bug
  15. 20161212xlVBA文本文件多列合并
  16. jQuery动画之显示隐藏动画
  17. Tunnel Warfare HDU 1540 区间合并+最大最小值
  18. 10年日语营业转行IT从深圳到日本东京圈工作生活2019copy
  19. JPEG图像压缩解压算法——C++实现
  20. 论文笔记——HDD算法:异构网络中信息扩散的深度学习方法

热门文章

  1. 高效的股票数据接口工具有哪些?
  2. 2017VR创新创业大赛:500万奖金创VR赛事最高纪录
  3. DevExpress部分使用技巧(转存) -- 轻舞肥羊
  4. 大数据分析与数据分析的根本区别在哪里
  5. 对称加密和非对称加密(to be continued)
  6. 【OpenCV】Ubuntu配置OpenCV环境
  7. 十次方需求分析与技术架构、Node.js、包资源管理器NPM、Webpack
  8. VMware虚拟机中Windows7系统安装VMware Tools教程
  9. 测试行业2018年报告总结
  10. racket android,RacketGhost | F-Droid - Free and Open Source Android App Repository