summaryrefslogtreecommitdiffstats
path: root/doc
diff options
context:
space:
mode:
Diffstat (limited to 'doc')
-rw-r--r--doc/README.md21
-rw-r--r--doc/config/smtp-email-setup.md41
-rw-r--r--doc/install/aws-ebs-setup.md4
-rw-r--r--doc/install/release-numbering.md17
-rw-r--r--doc/install/requirements.md57
-rw-r--r--doc/install/single-container-install.md7
-rw-r--r--doc/integrations/sso/gitlab-sso.md2
7 files changed, 112 insertions, 37 deletions
diff --git a/doc/README.md b/doc/README.md
index baf499777..36d16b744 100644
--- a/doc/README.md
+++ b/doc/README.md
@@ -1,13 +1,24 @@
-# Documentation
+# Mattermost Documentation
+
+## General Information
+
+- [Mattermost Release Numbering Scheme](install/release-numbering.md)
## Administrator Documentation
### Installation
-- [Install Requirements](doc/install/requirements.md)
-- [Local Machine Setup ](doc/install/single-container-install.md)
-- [AWS Elastic Beanstalk Setup](doc/install/aws-ebs-setup.md)
+- [Software and Hardware Requirements](install/requirements.md)
+- [Local Machine Setup ](install/single-container-install.md)
+- [AWS Elastic Beanstalk Setup](install/aws-ebs-setup.md)
+- [Developer Machine Setup](doc/install/dev-setup.md)
### Configuration
-- [GitLab SSO Configuration](integrations/sso/gitlab-sso.md) - Configure OAuth2 Single-Sign-On for GitLab.
+- [GitLab SSO Configuration](integrations/sso/gitlab-sso.md)
+- [SMTP Email Setup](smtp-email-setup.md)
+
+## Developer Documentation
+
+- [Developer Machine Setup](doc/install/dev-setup.md)
+- [Mattermost Style Guide](developer/style-guide.md)
diff --git a/doc/config/smtp-email-setup.md b/doc/config/smtp-email-setup.md
index b90d78919..86e2bb20e 100644
--- a/doc/config/smtp-email-setup.md
+++ b/doc/config/smtp-email-setup.md
@@ -1,37 +1,40 @@
## SMTP Email Setup
-The following instructions maybe used when SMTP email is not setup as part of the installation process.
+In some product evaluation setups email is intentionally bypassed using a `ByPassEmail=true` option. This option allows account creation and system operation without having to set up an email service (e.g. no email verification is required for account creation). This also means neither email notifications nor password reset by email are available.
-1. Setup an email sending service. If you already have credentials for a SMTP server you can skip this step.
+To enable email, turn this option off by setting `ByPassEmail=false` and configuring an SMTP email service as follows:
+
+1. **Set up an SMTP email sending service.** (If you already have credentials for a SMTP server you can skip this step.)
1. [Setup Amazon Simple Email Service](https://console.aws.amazon.com/ses)
2. From the `SMTP Settings` menu click `Create My SMTP Credentials`
3. Copy the `Server Name`, `Port`, `SMTP Username`, and `SMTP Password`
4. From the `Domains` menu setup and verify a new domain. It it also a good practice to enable `Generate DKIM Settings` for this domain.
5. Choose an email address like `feedback@example.com` for Mattermost to send emails from.
6. Test sending an email from `feedback@example.com` by clicking the `Send a Test Email` button and verify everything appears to be working correctly.
-2. Modify the Mattermost configuration file config.json or config_docker.json with the SMTP information.
+2. **Modify the Mattermost configuration file config.json or config_docker.json with the SMTP information.**
1. If you're running Mattermost on Amazon Beanstalk you can shell into the instance with the following commands
2. `ssh ec2-user@[domain for the docker instance]`
3. `sudo gpasswd -a ec2-user docker`
4. Retrieve the name of the container with `sudo docker ps`
5. `sudo docker exec -ti container_name /bin/bash`
-3. Edit the config file `vi /config_docker.json` with the settings you captured from the step above. See an example below and notice `ByPassEmail` has been set to `false`
-``` bash
-"EmailSettings": {
- "ByPassEmail" : false,
- "SMTPUsername": "AKIADTOVBGERKLCBV",
- "SMTPPassword": "jcuS8PuvcpGhpgHhlcpT1Mx42pnqMxQY",
- "SMTPServer": "email-smtp.us-east-1.amazonaws.com:465",
- "UseTLS": true,
- "FeedbackEmail": "feedback@example.com",
- "FeedbackName": "Feedback",
- "ApplePushServer": "",
- "ApplePushCertPublic": "",
- "ApplePushCertPrivate": ""
-}
-```
-4. Restart Mattermost
+3. **Edit the config file `vi /config_docker.json` with the settings you captured from the step above.**
+ 1. See an example below and notice `ByPassEmail` has been set to `false`
+ ``` bash
+ "EmailSettings": {
+ "ByPassEmail" : false,
+ "SMTPUsername": "AKIADTOVBGERKLCBV",
+ "SMTPPassword": "jcuS8PuvcpGhpgHhlcpT1Mx42pnqMxQY",
+ "SMTPServer": "email-smtp.us-east-1.amazonaws.com:465",
+ "UseTLS": true,
+ "FeedbackEmail": "feedback@example.com",
+ "FeedbackName": "Feedback",
+ "ApplePushServer": "",
+ "ApplePushCertPublic": "",
+ "ApplePushCertPrivate": ""
+ }
+ ```
+4. **Restart Mattermost**
1. Find the process id with `ps -A` and look for the process named `platform`
2. Kill the process `kill pid`
3. The service should restart automatically. Verify the Mattermost service is running with `ps -A`
diff --git a/doc/install/aws-ebs-setup.md b/doc/install/aws-ebs-setup.md
index 452cfcb4f..e186fa9c1 100644
--- a/doc/install/aws-ebs-setup.md
+++ b/doc/install/aws-ebs-setup.md
@@ -1,14 +1,14 @@
## AWS Elastic Beanstalk Setup (Docker)
-1. Create a new Elastic Beanstalk Docker application using the [Dockerrun.aws.zip](docker/0.6/Dockerrun.aws//Dockerrun.aws.zip) file provided.
+1. Create a new Elastic Beanstalk Docker application using the [Dockerrun.aws.zip](/docker/0.7/Dockerrun.aws.zip) file provided.
1. From the AWS console select Elastic Beanstalk.
2. Select "Create New Application" from the top right.
3. Name the application and press next.
4. Select "Create a web server" environment.
5. If asked, select create an IAM role and instance profile and press next.
6. For predefined configuration select under Generic: Docker. For environment type select single instance.
- 7. For application source, select upload your own and upload Dockerrun.aws.zip from [Dockerrun.aws.zip](docker/0.6/Dockerrun.aws//Dockerrun.aws.zip). Everything else may be left at default.
+ 7. For application source, select upload your own and upload Dockerrun.aws.zip from [Dockerrun.aws.zip](/docker/0.7/Dockerrun.aws.zip). Everything else may be left at default.
8. Select an environment name, this is how you will refer to your environment. Make sure the URL is available then press next.
9. The options on the additional resources page may be left at default unless you wish to change them. Press Next.
10. On the configuration details place. Select an instance type of t2.small or larger.
diff --git a/doc/install/release-numbering.md b/doc/install/release-numbering.md
new file mode 100644
index 000000000..71374f7ef
--- /dev/null
+++ b/doc/install/release-numbering.md
@@ -0,0 +1,17 @@
+### Mattermost Release Numbering
+
+Mattermost numbers its stable releases based on the following format:
+
+ `[Version Number].[Major Build Number].[Minor Build Number]`
+
+Version Number:
+
+- Indicates a major system release (e.g. 1.x.x, 2.x.x)
+
+Major Build Number:
+
+- Indicates significant new functionality, (e.g. 0.5.x, 0.6.x, 0.7.x)
+
+Minor Build Number:
+
+- Indicates bugfix/security releases (e.g. 1.2.5, 1.2.6)
diff --git a/doc/install/requirements.md b/doc/install/requirements.md
index cc0d1833d..1e0a12fb9 100644
--- a/doc/install/requirements.md
+++ b/doc/install/requirements.md
@@ -1,8 +1,8 @@
-# Requirements
+## Software Requirements
-## Web Client
+### Web Client
-Supported Operating Systems and Browsers:
+Supported Operating Systems and Browsers for the Mattermost Web Client include:
- PC: Windows 7, Windows 8 (Chrome 43+, Firefox 38+, Internet Explorer 10+)
- Mac: OS 10 (Safari 7, Chrome 43+)
@@ -10,9 +10,9 @@ Supported Operating Systems and Browsers:
- iPhone 4s and higher (Safari on iOS 8.3+, Chrome 43+)
- Android 5 and higher (Chrome 43+)
-## Server
+### Server
-While the pre-released version of Mattermost is not currently supported in production, the intention from the product team is to support:
+Supported Operating Systems for the Mattermost Server include:
- Ubuntu
- Debian
@@ -21,3 +21,50 @@ While the pre-released version of Mattermost is not currently supported in produ
- Oracle Linux
The Mattermost roadmap does not currently include production support for Fedora, FreeBSD or Arch Linux.
+
+## Hardware Requirements
+
+Mattermost offers both real-time communication and file sharing. CPU and Memory requirements are typically driven by the number of concurrent users using real-time messaging. Storage requirements are typically driven by number and size of files shared.
+
+The below guidelines offer estimates based on real world usage of Mattermost across industries.
+
+### CPU
+
+- 2 cores is the recommended number of cores and supports up to 250 users
+- 4 cores supports up to 1,000 users
+- 8 cores supports up to 2,500 users
+- 16 cores supports up to 5,000 users
+- 32 cores supports up to 10,000 users
+- 64 cores supports up to 20,000 users
+
+### Memory
+
+- 2GB RAM is the recommended memory size and supports up to 50 users
+- 4GB RAM supports up to 500 users
+- 8GB RAM supports up to 1,000 users
+- 16GB RAM supports up to 2,000 users
+- 32GB RAM supports up to 4,000 users
+- 64GB RAM supports up to 8,000 users
+- 128GB RAM supports up to 16,000 users
+
+### Storage
+
+To estimate initial storage requirements, begin with a Mattermost server approximately 600 MB to 800 MB in size including operating system and database, then add the multiplied product of:
+
+- Estimated storage per user per month (see below), multipled by 12 months in a year
+- Estimated mean average number of users in a year
+- A 1-2x safety factor
+
+**Estimated storage per user per month**
+
+File usage per user varies significantly across industries. The below benchmarks are recommended:
+
+- **Low usage teams** (1-5 MB/user/month) - Primarily use text-messages and links to communicate. Examples would include software development teams that heavily use web-based document creation and management tools, and therefore rarely upload files to the server.
+
+- **Medium usage teams** (5-25 MB/user/month) - Use a mix of text-messages as well as shared documents and images to communicate. Examples might include business teams that may commonly drag and drop screenshots, PDFs and Microsoft Office documents into Mattermost for sharing and review.
+
+- **High usage teams** - (25-100 MB/user/month) - Heaviest utlization comes from teams uploading a high number of large files into Mattermost on a regular basis. Examples include creative teams who share and store artwork and media with tags and commentary in a pipeline production process.
+
+*Example:* A 30-person team with medium usage (5-25 MB/user/month) with a safety factor of 2x would require between 300 MB (30 users * 5 MB * 2x safety factor) and 1500 MB (30 users * 25 MB * 2x safety factor) of free space in the next year.
+
+It's recommended to review storage utilization at least quarterly to ensure adequate free space is available.
diff --git a/doc/install/single-container-install.md b/doc/install/single-container-install.md
index 3e307ca74..772f3becf 100644
--- a/doc/install/single-container-install.md
+++ b/doc/install/single-container-install.md
@@ -1,10 +1,7 @@
-# Single Container Installation and Upgrade
+# Local Machine Setup and Upgrade
The following install instructions are for single-container installs of Mattermost using Docker for exploring product functionality and upgrading to newer versions.
-Local Machine Setup (Docker)
------------------------------
-
### Mac OSX ###
1. Install Boot2Docker using instructions at: http://docs.docker.com/installation/mac/
@@ -89,7 +86,7 @@ There are a few configuration settings you might want to adjust when setting up
The default single-container Docker instance for Mattermost is designed for product evaluation, and sets `ByPassEmail=true` so the product can run without enabling email, when doing so maybe difficult.
-To see the product's full functionality, [enabling SMTP email is recommended](doc/config/smtp-email-setup.md).
+To see the product's full functionality, [enabling SMTP email is recommended](/doc/config/smtp-email-setup.md).
## Upgrading Mattermost
diff --git a/doc/integrations/sso/gitlab-sso.md b/doc/integrations/sso/gitlab-sso.md
index c0cd6cb45..6110db504 100644
--- a/doc/integrations/sso/gitlab-sso.md
+++ b/doc/integrations/sso/gitlab-sso.md
@@ -14,6 +14,6 @@ The following steps can be used to configure Mattermost to use GitLab as a singl
* _TokenEndpoint_: `<your-gitlab-url>/oauth/token`
* _UserApiEndpoint_: `<your-gitlab-url>/api/v3/user`
-6. (Optional) If you would like to force all users to sign-up with GitLab only, in the _ServiceSettings_ section of config/config.json please set _AllowEmailSignUp_ to `false`.
+6. (Optional) If you would like to force all users to sign-up with GitLab only, in the _ServiceSettings_ section of config/config.json please set _DisableEmailSignUp_ to `true`.
7. Restart your Mattermost server to see the changes take effect.