Добавить в корзинуПозвонить
Найти в Дзене
Серик Байбатыров

Windows: Установка Mattermost в Docker (корп чат)

Устанавливаем Docker Desktop и запускаем
Создаем docker-compose.yml в новой папке C:\docker\mattermost
version: '3.8'
services:

Устанавливаем Docker Desktop и запускаем

Создаем docker-compose.yml в новой папке C:\docker\mattermost

version: '3.8'

services:

mattermost-db:

image: postgres:18-alpine

container_name: mattermost-db

restart: unless-stopped

environment:

- POSTGRES_USER=<Имя_пользователя>

- POSTGRES_PASSWORD=<Пароль>

- POSTGRES_DB=mattermost

ports:

- "5432:5432"

networks:

- mm_network

volumes:

- ./volumes/db:/var/lib/postgresql

mattermost:

image: mattermost/mattermost-team-edition:latest

container_name: mattermost-app

restart: unless-stopped

depends_on:

- mattermost-db

ports:

- "8065:8065"

volumes:

- ./volumes/data:/mattermost/data

- ./volumes/config:/mattermost/config

- ./volumes/logs:/mattermost/logs

- ./volumes/plugins:/mattermost/plugins

environment:

- MM_SQLSETTINGS_DRIVERNAME=postgres

- MM_SQLSETTINGS_DATASOURCE=postgres://<Имя_пользователя>:<Пароль>@mattermost-db:5432/mattermost?sslmode=disable&connect_timeout=10

networks:

- mm_network

networks:

mm_network:

driver: bridge

<Имя_пользователя> и <Пароль> для подключения к БД

в docker-compose очень чувствительны к отступам в строках будьте внимательны.

Открываем в этой папке окно PowerShell и выполняем:

docker compose up -d

С первого запуска по логам можно увидеть, что mattermost не может подключиться к БД. Надо немного подождать чтоб база создалась потом перезапустить контейнер.

Переходим в браузере http://localhost:8065

Настраиваем WebServer

System Console >Environment > Web Server

В поле Site URL: вписываем http://localhost:8065 если локально или внешний url (настоятельно рекомендую настраивать с поддежкой ssl но об этом в следующей статье).

Настраиваем уведомления. Создаем пароль для приложения (Например в Yandex)

Заходим в System Console > Site Configuration > Notifications (Конфигурация сайта > Уведомления)

Указываем свой ящик Yandex

Заполняем поля

Заходим в System Console > Environment > SMTP

-2

Проверяем уведомления.

-3

Готово!

P.S. Добавим возможность загрузки плагинов из файлов останавливаем контейнер.

По умолчанию такая возможность отключена. Заходим в папку докера matterpost/volumes/config/ редактируем config.json

Меняем параметр PluginSettings: "EnableUploads": на true

запускаем контейнер.

Если в логах ошибки с URL заблокирован из-за CORS.

тогда в этом файле правим "AllowCorsFrom": "http://localhost:8065",

тут надо указать url адреса от которых идут ошибки.