diff options
Diffstat (limited to 'doc')
-rw-r--r-- | doc/developer/Setup.md | 2 | ||||
-rw-r--r-- | doc/install/Docker-Single-Container.md | 7 | ||||
-rw-r--r-- | doc/install/Production-Ubuntu.md | 5 | ||||
-rw-r--r-- | doc/install/SMTP-Email-Setup.md | 81 | ||||
-rw-r--r-- | doc/install/Troubleshooting.md | 7 |
5 files changed, 53 insertions, 49 deletions
diff --git a/doc/developer/Setup.md b/doc/developer/Setup.md index afaef4ee4..d806b7a9b 100644 --- a/doc/developer/Setup.md +++ b/doc/developer/Setup.md @@ -61,7 +61,7 @@ Any issues? Please let us know on our forums at: http://forum.mattermost.org 3. Reload your bashrc `source ~/.bashrc` 6. Install Node.js - 1. Download the newest version of the Node.js sources from https://nodejs.org/download/ + 1. Download the newest version of the Node.js sources from https://nodejs.org/en/download/ 2. Extract the contents of the package and cd into the extracted files 3. Compile and install Node.js `./configure` diff --git a/doc/install/Docker-Single-Container.md b/doc/install/Docker-Single-Container.md index 4b952cd71..7c0784ad0 100644 --- a/doc/install/Docker-Single-Container.md +++ b/doc/install/Docker-Single-Container.md @@ -2,6 +2,13 @@ The following install instructions are for single-container installs of Mattermost using Docker for exploring product functionality and upgrading to newer versions. +### One-line Docker Install ### + +If you have Docker set up, Mattermost installs in one-line: +`docker run --name mattermost-dev -d --publish 8065:80 mattermost/platform` + +Otherwise, see step-by-step available: + ### Mac OSX ### 1. Install Docker Toolbox using instructions at: http://docs.docker.com/installation/mac/ diff --git a/doc/install/Production-Ubuntu.md b/doc/install/Production-Ubuntu.md index 05a56c412..836af3995 100644 --- a/doc/install/Production-Ubuntu.md +++ b/doc/install/Production-Ubuntu.md @@ -28,7 +28,7 @@ ## Set up Mattermost Server 1. For the purposes of this guide we will assume this server has an IP address of 10.10.10.2 1. Download the latest Mattermost Server by typing: - * ``` wget https://github.com/mattermost/platform/releases/download/v1.0.0/mattermost.tar.gz``` + * ``` wget https://github.com/mattermost/platform/releases/download/v1.1.0/mattermost.tar.gz``` 1. Unzip the Mattermost Server by typing: * ``` tar -xvzf mattermost.tar.gz``` 1. For the sake of making this guide simple we located the files at `/home/ubuntu/mattermost`. In the future we will give guidance for storing under `/opt`. @@ -160,10 +160,11 @@ exec bin/platform proxy_set_header X-Forwarded-Ssl on; ``` ## Finish Mattermost Server setup + 1. Navigate to https://mattermost.example.com and create a team and user. 1. The first user in the system is automatically granted the `system_admin` role, which gives you access to the System Console. 1. From the `town-square` channel click the dropdown and choose the `System Console` option -1. Update Email Settings. We recommend using an email sending service. The example below assumes AmazonSES. +1. Update Email Settings. We recommend using an email sending service. The example shows how an Amazon SES setup might look (sample credentials shown below are not real). * Set *Send Email Notifications* to true * Set *Require Email Verification* to true * Set *Feedback Name* to `No-Reply` diff --git a/doc/install/SMTP-Email-Setup.md b/doc/install/SMTP-Email-Setup.md index 8bf094714..4e06d2f99 100644 --- a/doc/install/SMTP-Email-Setup.md +++ b/doc/install/SMTP-Email-Setup.md @@ -1,55 +1,46 @@ ## SMTP Email Setup -In some product evaluation setups, email is intentionally bypassed by setting `SendEmailNotifications=false`. 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. - -To enable email, turn this option on by setting `SendEmailNotifications=true` 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 `mattermost@example.com` for Mattermost to send emails from. - 6. Test sending an email from `mattermost@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.** - 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.** - 1. See an example below and notice `SendEmailNotifications` has been set to `true` - ``` - "EmailSettings": { - "EnableSignUpWithEmail": true, - "SendEmailNotifications": true, - "RequireEmailVerification": true, - "FeedbackName": "No-Reply", - "FeedbackEmail": "mattermost@example.com", - "SMTPUsername": "AFIADTOVDKDLGERR", - "SMTPPassword": "DFKJoiweklsjdflkjOIGHLSDFJewiskdjf", - "SMTPServer": "email-smtp.us-east-1.amazonaws.com", - "SMTPPort": "465", - "ConnectionSecurity": "TLS", - "InviteSalt": "bjlSR4QqkXFBr7TP4oDzlfZmcNuH9YoS", - "PasswordResetSalt": "vZ4DcKyVVRlKHHJpexcuXzojkE5PZ5eL", - "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` - 4. Current logged in users will not be affected, but upon logging out or session expiration users will be required to verify their email address. +In product evaluation setups with single-container Docker instances, email is intentionally disabled. This allows account creation and system operation without having to set up email, but it also means email notification and password reset functionality aren't available. + +### How to enable email + +To enable email, configure an SMTP email service as follows: + +1. **Set up an SMTP email sending service** (if you don't yet have an SMTP service with credentials) + 1. Any SMTP email service can be used, you just need the following information: `Server Name`, `Port`, `SMTP Username`, and `SMTP Password`. + 2. If you don't have an SMTP service, here are simple instructions to set one up with [Amazon Simple Email Service (SES)](https://aws.amazon.com/ses/): + 2. Go to [Amazon SES console](https://console.aws.amazon.com/ses) then `SMTP Settings > Create My SMTP Credentials` + 3. Copy the `Server Name`, `Port`, `SMTP Username`, and `SMTP Password` for Step 2 below. + 4. From the `Domains` menu set up and verify a new domain, then enable `Generate DKIM Settings` for the domain. + 5. Choose an sender address like `mattermost@example.com` and click `Send a Test Email` to verify setup is working correctly. +2. **Configure SMTP settings** + 1. Open the **System Console** by logging into an existing team and accessing "System Console" from the main menu. + 1. Alternatively, if a team doesn't yet exist, go to `http://dockerhost:8065/` in your browser, create a team, then from the main menu click **System Console** + 2. Go to the **Email Settings** tab and configure the following: + 1. **Allow Sign Up With Email:** `true` + 2. **Send Email Notifications:** `true` + 3. **Require Email Verification:** `true` + 4. **Notification Display Name:** Display name on email account sending notifications + 5. **Notification Email Address:** Email address displayed on email account used to send notifications + 6. **SMTP Username**: `SMTP Username` from Step 1 + 7. **SMTP Password**: `SMTP Password` from Step 1 + 8. **SMTP Server**: `SMTP Server` from Step 1 + 9. **SMTP Port**: `SMTP Port` from Step 1 + 10. **Connection Security**: `TLS (Recommended)` + 11. Then click **Save** + +3. **Restart Mattermost** + 1. Use `ps -A` to find the process ID ("pid") for service named `platform` and stop it using `kill [pid]` + 2. The service should restart automatically. Run `ps -A` to verify the `platform` is running again + 3. Use the reset password page (E.g. _example.com/teamname/reset_password_) to test that email is now working by entering your email and clicking **Reset my password**. + 4. Note: The next time users log out, or when their session tokens expire, each will be required to verify their email address. ### Troubleshooting SMTP -If you have issues with your SMTP install, from your Mattermost team site go to the main menu and open `System Console > Logs` to look for error messages related to your setup. You can do a search for the error code to narrow down the issue. Sometimes ISPs require nuanced setups for SMTP and error codes can hint at how to make the proper adjustments. +If you have issues with your SMTP install, from your Mattermost team site go to the main menu and open **System Console -> Logs** to look for error messages related to your setup. You can do a search for the error code to narrow down the issue. Sometimes ISPs require nuanced setups for SMTP and error codes can hint at how to make the proper adjustments. -For example, if `System Console > Logs` has an error code reading: +For example, if **System Console -> Logs** has an error code reading: ``` Connection unsuccessful: Failed to add to email address - 554 5.7.1 <unknown[IP-ADDRESS]>: Client host rejected: Access denied diff --git a/doc/install/Troubleshooting.md b/doc/install/Troubleshooting.md index 8d82100d8..6a7260ddf 100644 --- a/doc/install/Troubleshooting.md +++ b/doc/install/Troubleshooting.md @@ -3,5 +3,10 @@ #### Important notes 1. **DO NOT manipulate the Mattermost database** - - In particular, DO NOT delete data from the database, as this will most likely crash Mattermost in strange ways. Mattermost is designed to archive content continously and generally assumes data is never deleted. + - In particular, DO NOT delete data from the database, as Mattermost is designed to stop working if data integrity has been compromised. The system is designed to archive content continously and generally assumes data is never deleted. + +#### Common Issues + +1. Error message in logs when attempting to sign-up: `x509: certificate signed by unknown authority` + - This error may appear when attempt to use a self-signed certificate to setup SSL, which is not yet supported by Mattermost. You can resolve this issue by setting up a load balancer like Ngnix. A ticket exists to [add support for self-signed certificates in future](x509: certificate signed by unknown authority). |