Newbie to Docker and MM

Summary
I followed instructions and used ssh to install docker on Ubuntu VPS and it’s running great. I just don’t know how to access it.

Steps to reproduce
There isn’t really anything wrong other than the fact that I can’t gain access to the running

Expected Behavior
I used ssh and had a fresh install of Ubuntu 22.04 and followed instructions to install docker on vps and then mattermost in that. So it shows everything is running great, my domain is ericsanger.com. I’ve tried ports like 8065 but I can’t get into MM to get setup.

Observed behavior
So everything server side is running great! No errors at all. I did the docker install on VPS because I kept hitting snags trying to install directly on Ubuntu and I don’t know why. I use slack for my team right now and want to self host our own comms system. Can someone please help me get this going? Is it a domain issue? The server is 167.114.124.108

Thank you so much in advance. I’m ready to throw my laptop out the window :joy: help me! Hahaha but in all seriousness…I’m a newb with this stuff. I just wanna use what I installed. Thanks.

1 Like

What’s the IP address of the container running Mattermost? Visit http://<that.ip.address>:8065

Well, it’s embarrassing to admit but I have no idea what the container ip is. At this point I don’t even know what the container is called. I just browsed Google quickly to see if I can find the name of the container so I could get the ip but I am striking out across the board. I’ve been trying to get this installed since 3:30am EST

joliver@mmjoliver:~/docker$ docker ps
CONTAINER ID   IMAGE                                           COMMAND                  CREATED         STATUS                   PORTS                                                                                                           NAMES
7168425a36ba   mattermost/mattermost-enterprise-edition:7.10   "/entrypoint.sh matt…"   6 minutes ago   Up 6 minutes (healthy)   8067/tcp, 0.0.0.0:8065->8065/tcp, :::8065->8065/tcp, 8074-8075/tcp, 0.0.0.0:8443->8443/udp, :::8443->8443/udp   docker_mattermost_1
ef15f8ea447e   postgres:13-alpine                              "docker-entrypoint.s…"   6 minutes ago   Up 6 minutes             5432/tcp                                                                                                        docker_postgres_1
joliver@mmjoliver:~/docker$ docker inspect -f '{{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}}' 7168425a36ba
172.20.0.3

So I was able to inspect the container and it comes up with 172.17.0.2 and when I try to run it with :8065 as you suggested it just says it can’t be reached. I’m really at a loss here. I need help, and a lot of it apparently lol

On the host, what does ip r show? Can you ping 172.17.0.2? How about curl http://172.17.0.2:8065? And make sure that you’re retrievig the IF for the Mattermost container, not the Postgres one!

This is what i get. None of the 172. ips give a ping response

And I also tried installing directly to Ubuntu and everything went perfect until I went to run the service. Whether it be docker or Ubuntu, mattermost just isn’t interested in working for me.

What does docker ps say?

In the second example, what’s the output of journalctl -xeu mattermost.service?

Here is the docker one

And here is Ubuntu one. I really appreciate all of this. I just want a working mattermost so badly.

Can you copy-and-paste the text of the journalctl output?

And the full output of docker inspect cf8df6b12232

Also, for your non-docker install, do a tail -f /opt/mattermost/logs/mattermost.log, hit enet a few times to create some blank space, try to start mattermost.service and post anything that shows up in that log. You may need to set FileVelel under LogSettings in /opt/mattermost/config/config.json to DEBUG

Here is docker:
{
“Id”: “cf8df6b122326473ccebf6d461a80b5e5335805e8a923e88c53a0a824a601e85”,
“Created”: “2024-12-30T15:15:54.395820222Z”,
“Path”: “/entrypoint.sh”,
“Args”: [
“mattermost”
],
“State”: {
“Status”: “running”,
“Running”: true,
“Paused”: false,
“Restarting”: false,
“OOMKilled”: false,
“Dead”: false,
“Pid”: 1855,
“ExitCode”: 0,
“Error”: “”,
“StartedAt”: “2024-12-30T18:01:38.75247653Z”,
“FinishedAt”: “2024-12-30T18:01:05.418257605Z”,
“Health”: {
“Status”: “healthy”,
“FailingStreak”: 0,
“Log”: [
{
“Start”: “2024-12-30T16:59:57.230125748-05:00”,
“End”: “2024-12-30T16:59:57.275092609-05:00”,
“ExitCode”: 0,
“Output”: " % Total % Received % Xferd Average Speed Time Time Time Current\n Dload Upload Total Spent Left Speed\n\r 0 0 0 0 0 0 0 0 --:–:-- --:–:-- --:–:-- 0\r100 138 100 138 0 0 247k 0 --:–:-- --:–:-- --:–:-- 134k\n{"ActiveSearchBackend":"database","AndroidLatestVersion":"","AndroidMinVersion":"","IosLatestVersion":"","IosMinVersion":"","status":"OK"}"
},
{
“Start”: “2024-12-30T17:00:27.275555024-05:00”,
“End”: “2024-12-30T17:00:27.306018507-05:00”,
“ExitCode”: 0,
“Output”: " % Total % Received % Xferd Average Speed Time Time Time Current\n Dload Upload Total Spent Left Speed\n\r 0 0 0 0 0 0 0 0 --:–:-- --:–:-- --:–:-- 0\r100 138 100 138 0 0 210k 0 --:–:-- --:–:-- --:–:-- 134k\n{"ActiveSearchBackend":"database","AndroidLatestVersion":"","AndroidMinVersion":"","IosLatestVersion":"","IosMinVersion":"","status":"OK"}"
},
{
“Start”: “2024-12-30T17:00:57.30651484-05:00”,
“End”: “2024-12-30T17:00:57.332150065-05:00”,
“ExitCode”: 0,
“Output”: " % Total % Received % Xferd Average Speed Time Time Time Current\n Dload Upload Total Spent Left Speed\n\r 0 0 0 0 0 0 0 0 --:–:-- --:–:-- --:–:-- 0\r100 138 100 138 0 0 279k 0 --:–:-- --:–:-- --:–:-- 134k\n{"ActiveSearchBackend":"database","AndroidLatestVersion":"","AndroidMinVersion":"","IosLatestVersion":"","IosMinVersion":"","status":"OK"}"
},
{
“Start”: “2024-12-30T17:01:27.332561011-05:00”,
“End”: “2024-12-30T17:01:27.381487029-05:00”,
“ExitCode”: 0,
“Output”: " % Total % Received % Xferd Average Speed Time Time Time Current\n Dload Upload Total Spent Left Speed\n\r 0 0 0 0 0 0 0 0 --:–:-- --:–:-- --:–:-- 0\r100 138 100 138 0 0 238k 0 --:–:-- --:–:-- --:–:-- 134k\n{"ActiveSearchBackend":"database","AndroidLatestVersion":"","AndroidMinVersion":"","IosLatestVersion":"","IosMinVersion":"","status":"OK"}"
},
{
“Start”: “2024-12-30T17:01:57.382009644-05:00”,
“End”: “2024-12-30T17:01:57.426397778-05:00”,
“ExitCode”: 0,
“Output”: " % Total % Received % Xferd Average Speed Time Time Time Current\n Dload Upload Total Spent Left Speed\n\r 0 0 0 0 0 0 0 0 --:–:-- --:–:-- --:–:-- 0\r100 138 100 138 0 0 286k 0 --:–:-- --:–:-- --:–:-- 134k\n{"ActiveSearchBackend":"database","AndroidLatestVersion":"","AndroidMinVersion":"","IosLatestVersion":"","IosMinVersion":"","status":"OK"}"
}
]
}
},
“Image”: “sha256:c6709ffc8101b0e20e6a5ca3ca18381543e160c10194b2395febdcc7ea286151”,
“ResolvConfPath”: “/var/lib/docker/containers/cf8df6b122326473ccebf6d461a80b5e5335805e8a923e88c53a0a824a601e85/resolv.conf”,
“HostnamePath”: “/var/lib/docker/containers/cf8df6b122326473ccebf6d461a80b5e5335805e8a923e88c53a0a824a601e85/hostname”,
“HostsPath”: “/var/lib/docker/containers/cf8df6b122326473ccebf6d461a80b5e5335805e8a923e88c53a0a824a601e85/hosts”,
“LogPath”: “/var/lib/docker/containers/cf8df6b122326473ccebf6d461a80b5e5335805e8a923e88c53a0a824a601e85/cf8df6b122326473ccebf6d461a80b5e5335805e8a923e88c53a0a824a601e85-json.log”,
“Name”: “/docker_app_1”,
“RestartCount”: 0,
“Driver”: “overlay2”,
“Platform”: “linux”,
“MountLabel”: “”,
“ProcessLabel”: “”,
“AppArmorProfile”: “docker-default”,
“ExecIDs”: null,
“HostConfig”: {
“Binds”: [
“docker_mattermost_data:/mattermost/data:rw”
],
“ContainerIDFile”: “”,
“LogConfig”: {
“Type”: “json-file”,
“Config”: {}
},
“NetworkMode”: “docker_default”,
“PortBindings”: {},
“RestartPolicy”: {
“Name”: “always”,
“MaximumRetryCount”: 0
},
“AutoRemove”: false,
“VolumeDriver”: “”,
“VolumesFrom”: ,
“ConsoleSize”: [
0,
0
],
“CapAdd”: null,
“CapDrop”: null,
“CgroupnsMode”: “private”,
“Dns”: ,
“DnsOptions”: ,
“DnsSearch”: ,
“ExtraHosts”: null,
“GroupAdd”: null,
“IpcMode”: “private”,
“Cgroup”: “”,
“Links”: null,
“OomScoreAdj”: 0,
“PidMode”: “”,
“Privileged”: false,
“PublishAllPorts”: false,
“ReadonlyRootfs”: false,
“SecurityOpt”: null,
“UTSMode”: “”,
“UsernsMode”: “”,
“ShmSize”: 67108864,
“Runtime”: “runc”,
“Isolation”: “”,
“CpuShares”: 0,
“Memory”: 0,
“NanoCpus”: 0,
“CgroupParent”: “”,
“BlkioWeight”: 0,
“BlkioWeightDevice”: null,
“BlkioDeviceReadBps”: null,
“BlkioDeviceWriteBps”: null,
“BlkioDeviceReadIOps”: null,
“BlkioDeviceWriteIOps”: null,
“CpuPeriod”: 0,
“CpuQuota”: 0,
“CpuRealtimePeriod”: 0,
“CpuRealtimeRuntime”: 0,
“CpusetCpus”: “”,
“CpusetMems”: “”,
“Devices”: null,
“DeviceCgroupRules”: null,
“DeviceRequests”: null,
“MemoryReservation”: 0,
“MemorySwap”: 0,
“MemorySwappiness”: null,
“OomKillDisable”: null,
“PidsLimit”: null,
“Ulimits”: null,
“CpuCount”: 0,
“CpuPercent”: 0,
“IOMaximumIOps”: 0,
“IOMaximumBandwidth”: 0,
“MaskedPaths”: [
“/proc/asound”,
“/proc/acpi”,
“/proc/kcore”,
“/proc/keys”,
“/proc/latency_stats”,
“/proc/timer_list”,
“/proc/timer_stats”,
“/proc/sched_debug”,
“/proc/scsi”,
“/sys/firmware”,
“/sys/devices/virtual/powercap”
],
“ReadonlyPaths”: [
“/proc/bus”,
“/proc/fs”,
“/proc/irq”,
“/proc/sys”,
“/proc/sysrq-trigger”
]
},
“GraphDriver”: {
“Data”: {
“LowerDir”: “/var/lib/docker/overlay2/0baa1d9ad8af287728d067258198099d5b2f96df19fdab4480c533f2c1e6584e-init/diff:/var/lib/docker/overlay2/ea75e0fe05043dbd0af66b8f5fe57c875197f7a195c8dd17c7311b0475ab8512/diff:/var/lib/docker/overlay2/b3ef8a1b9dabdef2305714fdf5713751ab58a90266e358a74e3c7ec5871839c7/diff:/var/lib/docker/overlay2/1ffff4d95eced2ff7add9710fc4d163f899f56bd85ee1b8ce7b759692a561777/diff:/var/lib/docker/overlay2/37904ad85fe136ccc287154509b6f02d01962d9620ec03c829c3cde0a6a87f30/diff:/var/lib/docker/overlay2/0ed55ffea1b335deaa40dc3b20c8e224ef84eca895232dad96cfe2d3d58122dc/diff”,
“MergedDir”: “/var/lib/docker/overlay2/0baa1d9ad8af287728d067258198099d5b2f96df19fdab4480c533f2c1e6584e/merged”,
“UpperDir”: “/var/lib/docker/overlay2/0baa1d9ad8af287728d067258198099d5b2f96df19fdab4480c533f2c1e6584e/diff”,
“WorkDir”: “/var/lib/docker/overlay2/0baa1d9ad8af287728d067258198099d5b2f96df19fdab4480c533f2c1e6584e/work”
},
“Name”: “overlay2”
},
“Mounts”: [
{
“Type”: “volume”,
“Name”: “f466c261b78f251885437fcb8b57e74a00cccf46878402ad15f83722e36eb056”,
“Source”: “/var/lib/docker/volumes/f466c261b78f251885437fcb8b57e74a00cccf46878402ad15f83722e36eb056/_data”,
“Destination”: “/mattermost/logs”,
“Driver”: “local”,
“Mode”: “”,
“RW”: true,
“Propagation”: “”
},
{
“Type”: “volume”,
“Name”: “dfce7b6aafebcd130a7a8166886acb2bbe697ac8c4cd8d5a6020995f6b64b641”,
“Source”: “/var/lib/docker/volumes/dfce7b6aafebcd130a7a8166886acb2bbe697ac8c4cd8d5a6020995f6b64b641/_data”,
“Destination”: “/mattermost/plugins”,
“Driver”: “local”,
“Mode”: “”,
“RW”: true,
“Propagation”: “”
},
{
“Type”: “volume”,
“Name”: “11f0c4e1dd650c9dd6f6f8669561087f3dd787ad179df7579d68d2115cf2b9d3”,
“Source”: “/var/lib/docker/volumes/11f0c4e1dd650c9dd6f6f8669561087f3dd787ad179df7579d68d2115cf2b9d3/_data”,
“Destination”: “/mattermost/client/plugins”,
“Driver”: “local”,
“Mode”: “”,
“RW”: true,
“Propagation”: “”
},
{
“Type”: “volume”,
“Name”: “c857e948bee34b29a951494362d73d621d978b8e16e2074f399b2ae25104cdaa”,
“Source”: “/var/lib/docker/volumes/c857e948bee34b29a951494362d73d621d978b8e16e2074f399b2ae25104cdaa/_data”,
“Destination”: “/mattermost/config”,
“Driver”: “local”,
“Mode”: “”,
“RW”: true,
“Propagation”: “”
},
{
“Type”: “volume”,
“Name”: “docker_mattermost_data”,
“Source”: “/var/lib/docker/volumes/docker_mattermost_data/_data”,
“Destination”: “/mattermost/data”,
“Driver”: “local”,
“Mode”: “rw”,
“RW”: true,
“Propagation”: “”
}
],
“Config”: {
“Hostname”: “cf8df6b12232”,
“Domainname”: “”,
“User”: “mattermost”,
“AttachStdin”: false,
“AttachStdout”: false,
“AttachStderr”: false,
“ExposedPorts”: {
“8065/tcp”: {},
“8067/tcp”: {},
“8074/tcp”: {},
“8075/tcp”: {}
},
“Tty”: false,
“OpenStdin”: false,
“StdinOnce”: false,
“Env”: [
“MM_SQLSETTINGS_DATASOURCE=postgres://mmuser:CowboyIPTV12345!@db:5432/mattermost?sslmode=disable&connect_timeout=10”,
“PATH=/mattermost/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin”
],
“Cmd”: [
“mattermost”
],
“Healthcheck”: {
“Test”: [
“CMD-SHELL”,
“curl -f http://localhost:8065/api/v4/system/ping || exit 1”
],
“Interval”: 30000000000,
“Timeout”: 10000000000
},
“Image”: “mattermost/mattermost-team-edition”,
“Volumes”: {
“/mattermost/client/plugins”: {},
“/mattermost/config”: {},
“/mattermost/data”: {},
“/mattermost/logs”: {},
“/mattermost/plugins”: {}
},
“WorkingDir”: “/mattermost”,
“Entrypoint”: [
“/entrypoint.sh”
],
“OnBuild”: null,
“Labels”: {
“com.docker.compose.config-hash”: “656a247f1d49d1e9d1bbdca2dec8e7a66e731c98c8d866d20bec6eb71beae1dc”,
“com.docker.compose.container-number”: “1”,
“com.docker.compose.oneoff”: “False”,
“com.docker.compose.project”: “docker”,
“com.docker.compose.project.config_files”: “docker-compose.yaml”,
“com.docker.compose.project.working_dir”: “/etc/docker”,
“com.docker.compose.service”: “app”,
“com.docker.compose.version”: “1.29.2”,
“org.opencontainers.image.ref.name”: “ubuntu”,
“org.opencontainers.image.version”: “24.04”
}
},
“NetworkSettings”: {
“Bridge”: “”,
“SandboxID”: “5005ada7619376e613424b56651adc52e66c5c1b361ecfd78359b67297fcb2b2”,
“SandboxKey”: “/var/run/docker/netns/5005ada76193”,
“Ports”: {
“8065/tcp”: null,
“8067/tcp”: null,
“8074/tcp”: null,
“8075/tcp”: null
},
“HairpinMode”: false,
“LinkLocalIPv6Address”: “”,
“LinkLocalIPv6PrefixLen”: 0,
“SecondaryIPAddresses”: null,
“SecondaryIPv6Addresses”: null,
“EndpointID”: “”,
“Gateway”: “”,
“GlobalIPv6Address”: “”,
“GlobalIPv6PrefixLen”: 0,
“IPAddress”: “”,
“IPPrefixLen”: 0,
“IPv6Gateway”: “”,
“MacAddress”: “”,
“Networks”: {
“docker_default”: {
“IPAMConfig”: null,
“Links”: null,
“Aliases”: [
“app”,
“cf8df6b12232”
],
“MacAddress”: “02:42:ac:12:00:02”,
“DriverOpts”: null,
“NetworkID”: “2a63b1a52eb3facdde843b6b88d596fd106188dfc51f687605cfc4bfc78b0016”,
“EndpointID”: “63d6d4c61f2605c8275b9723f76a0f6ba8fce0ebfc9e9819658782d927d7755b”,
“Gateway”: “172.18.0.1”,
“IPAddress”: “172.18.0.2”,
“IPPrefixLen”: 16,
“IPv6Gateway”: “”,
“GlobalIPv6Address”: “”,
“GlobalIPv6PrefixLen”: 0,
“DNSNames”: [
“docker_app_1”,
“app”,
“cf8df6b12232”
]
}
}
}
}
]
root@167-114-124-108:/tmp/tmp.2UJk9H6C2p#

Its not letting me post that much information in here for some reason. It keeps deleting it.

It was flagged as possible spam.

Does http://172.18.0.2:8065 work?