Mattermost, Inc.

Getting Started

Starting a thread for anyone having issues with the Mattermost install instructions in the We’ll share updates here and field questions.

I was able to spin up an instance on AWS Beanstalk but I don’t see any options to create a team or even a user. Am I missing something obvious?

When you enter the domain you mapped into a browser, you should see at least a field to enter your email with a “Sign Up” button.

What are you seeing when you view the domain you mapped in a browser?

I’m using and do see this below the sign in fields:

Want to create your own team? Sign up now

But the Sign up now link redirects me to

Is there something that I need to configure?

Hi @alarm, please let me know if this FAQ might help?

Which FAQ is that? I followed the readme instructions exactly…

Sorry about that, here’s the link

It requires http://www.subdomain.domain.tld, so I can’t use http://subdomain.domain.tld? Should I bother registering a domain to test with or do you anticipate having this resolved fairly soon?

You’d actually want to use http://subdomain.domain.tld, since http://www.subdomain.domain.tld (what we’re calling a sub-sub-domain) isn’t supported. That’s the fix we’re working on.

There’s a second fix which is removing the domain requirement for the Beanstalk deployment, which should ideally appear on master in a week or two. That said, our next major build release isn’t for another 5 weeks or so (two 2-week sprints plus 1 week testing and stabilization).

If you just want to get it running to take a look, it might be worth setting up the domain with the requirements there.

I am actually using http://subdomain.domain.tld on Beanstalk, without www. That is supported, correct?

I think the issue might be how the hosted zone is configured. The hostname I’m using wasn’t created on AWS…

Edited: @alarm, I think we know what’s wrong. You can’t use subdomain.domain.tld as the root domain for the install, it needs to be domain.tld, and then your teams are TEAM_NAME.domain.tld.

There’s a pull request under review to fix this (, but right now it doesn’t work.

Fastest resolution would be just to use a domain.tld.

Gotcha, I’ll give that a shot and report back!

I’ve successfully installed Mattermost onto my host on digitalocean, but it seems Mattermost only works with ipv6.

$ netstat -anp | grep 8065
tcp6 0 0 :::8065 :::* LISTEN 4823/docker-proxy

actually, when i telnet the service inside the container, it tells me the service isn’t running.

$ telnet 8065
telnet: Unable to connect to remote host: Connection refused

$ docker ps
e6d1fea432fe mattermost/platform:helium "/bin/sh -c /go/src/ 4 seconds ago Up 3 seconds>80/tcp mattermost-dev

$ps axu | grep docker

root 2348 0.0 0.3 125208 1588 ? Sl 05:19 0:00 docker-proxy -proto tcp -host-ip -host-port 8065 -container-ip -container-port 80

This is what I have inside the container. it’s not listening to the port.

root@0f14ee67109a:/go/src/ netstat -apn | grep 80
unix 3 [ ] STREAM CONNECTED 20780 -

root@0f14ee67109a:/go/src/ ps axu
root 1 0.0 0.0 4440 100 ? Ss 10:33 0:00 /bin/sh -c /go/src/
root 9 0.0 0.1 17992 936 ? S 10:33 0:00 /bin/bash /go/src/
root 177 0.0 0.3 25340 1688 ? Ss 10:33 0:00 /usr/lib/postfix/master
root 178 0.1 0.4 35252 2240 ? Sl 10:33 0:02 redis-server :6379
root 179 0.0 0.1 17992 688 ? S 10:33 0:00 /bin/bash /go/src/
root 181 0.1 7.6 284852 38488 ? Sl 10:33 0:01 /usr/bin/ruby1.9.1 /usr/local/bin/compass watch
root 182 0.0 5.4 964796 27496 ? Sl 10:33 0:00 npm
postfix 187 0.0 0.3 27404 1524 ? S 10:33 0:00 pickup -l -t unix -u -c
postfix 188 0.0 0.3 27456 1560 ? S 10:33 0:00 qmgr -l -t unix -u
root 203 0.0 0.1 4444 656 ? S 10:34 0:00 sh -c watchify --extension=jsx -o …/static/js/bundle.js -v -d ./**/
root 204 0.2 21.2 755012 106400 ? Sl 10:34 0:04 node /go/src/ --extension=jsx -o …/static/js/bundle.js -v
root 226 0.0 0.4 18240 2084 ? Ss+ 10:51 0:00 /bin/bash
root 251 0.0 0.4 18148 2008 ? Ss 10:54 0:00 /bin/bash
root 312 0.0 0.2 15564 1148 ? R+ 11:01 0:00 ps axu

$ ip6tables -L -t nat
target prot opt source destination

Chain INPUT (policy ACCEPT)
target prot opt source destination

Chain OUTPUT (policy ACCEPT)
target prot opt source destination

target prot opt source destination

how can i start the service inside container to start listening to the port?

Rebuilt a local docker image.

ok, finally got it to work. here is what I did:

stop apache2
change port expose to 8080
restart the service

ok it stopped working again. can you recommend an OS that is best for Mattermost?

Hi @pro, Mattermost has been tested on both Arch and Ubuntu ( via Docker and we’re working on testing installs directly to OSs in the next release in about two weeks.

Is there some documentation how to install MM on a subdomain using Reverse proxiing?

  • I am running MM in a docker container on a local server
  • I am redirecting a subdomain from my provider to my local network (works fine with git, svn, postgre, etc…)
  • I am reverse proxying (apache2) the subdomain to a certain port within my local network (e.g. :16800)
  • I can login/register, but when I’m logged in it doesn’t communicate… instead I get:

We cannot reach the Mattermost service. The service may be down or misconfigured. Please contact an administrator to make sure the WebSocket port is configured properly.

However - I haven’t found any hint what else it needs.

Any info appreciated.

PS: working INSIDE the local network, everything is fine

The browser cannot connect to the server via the websocket protocol ws://. In Nginx you would have something like below in your configuration file, which allows the HTTP connection to be upgraded to a WS connection and proxied to Mattermost. I’m not sure what the equivalent is for apache.

proxy_set_header Connection "upgrade";```

Well, as I mentioned: that’s what I did - and it works for other services on the same machine.

I am using Apache and configured the VirtualHost to use ReverseProxy (which should be fine).

What I am missing is, which ports MM needs to communicate to it’s service (remember: I can log in and the web-ui is loaded, but communication to the service does not work).

Before digging through the sources, I’m just asking, if there’s some documentation, which ports are used (for what), so I can upgrade the connection at the correct ports :wink:

Any info on that?

The web socket is served over the same connection. If you’re able to load the webpage as described, but are seeing the blue bar at the top with the msg “We cannot reach the Mattermost service. …” then the proxy server is blocking the http->websocket upgrade. In the default config.json the ListenAddress is 8065. So you need to be able to handle http://localhost:8065 and ws://localhost:8065 traffic on the same port.

All the settings for config.json are documented in the System Console