Установка сервера управление проектами Kanboard на Synology

Всем привет!

В этом материале мы рассмотрим процесс установки Kanboard в Docker-контейнер на Synology NAS и разберем основные параметры его настройки, включая создание уведомлений для отслеживания прогресса проекта.

Kanboard это инструмент для управления проектами. Он помогает организовать задачи, управлять ресурсами и следить за прогрессом. Kanboard подходит как для одного человека так и для команд, которые работают над сложными проектами и нуждаются в эффективном управлении задачами.

Преимущества Kanboard включают:

  1. Простота использования: Kanboard имеет интуитивно понятный интерфейс, который позволяет пользователям быстро начать работу и организовать свои задачи.
  2. Управление задачами: Kanboard позволяет пользователям создавать задачи, устанавливать приоритеты, сроки выполнения и назначать их определенным членам команды.
  3. Настраиваемость: Kanboard предлагает множество опций настройки, включая темы, поля задач, правила и фильтры. Это позволяет пользователям адаптировать приложение под свои нужды.
  4. Навыки совместной работы: Kanboard поддерживает совместную работу в команде, позволяя участникам обсуждать задачи, добавлять комментарии и отмечать прогресс.
  5. Интеграция с другими приложениями: Kanboard может быть интегрирован с другими популярными приложениями, такими как GitHub, GitLab, Trello и другими, что облегчает управление проектами и обмен информацией.
  6. Безопасность: Kanboard обеспечивает высокий уровень безопасности благодаря шифрованию данных, аутентификации и авторизации пользователей.
  7. Возможны уведомления на Email(рассмотрено ниже), телеграм, Synology Chat, RocketChat и так далее.

Настроек очень много, вы точно сможете подогнать чуть-ли не каждый проект под себя. Например, можно менять количество колонок и их название и многое другое.

Установка Kanboard на Synology

Для очень больших установок можно подключить LDAP. Если вы не справитесь сами, то пишите мне в раздел фриланс.

В каталоге docker или там где вам больше нравиться создайте папку kanboard, а в ней еще три пустых каталога: 

  • data – тут будут лежать файлы задач и пользовательская конфигурация
  • plugins – тут будут лежать дополнительные плагины
  • db – тут будут лежать файлы базы данных

Теперь открываем Container Manager, создаем новый проект, даем ему название, задаем путь и вставляем docker-compose текст

В этом docker-compose тексте не забывайте указать корректный часовой пояс

version: '2'
services:
  kanboard-app:
    container_name: kanboard-app
    image: kanboard/kanboard:latest
    ports:
      - "8077:80"
    #  - "8443:443"
    depends_on:
      - kanboard-db
    volumes:
      - ./data:/var/www/app/data
      - ./plugins:/var/www/app/plugins
    #  - ./ssl:/etc/nginx/ssl
    environment:
      DATABASE_URL: mysql://kanboard:kanboard-secret@kanboard-db/kanboard
      PLUGIN_INSTALLER: true
    restart: always

  kanboard-db:
    container_name: kanboard-db
    image: mariadb:latest
    command: --default-authentication-plugin=mysql_native_password
    environment:
      MYSQL_ROOT_PASSWORD: secret
      MYSQL_DATABASE: kanboard
      MYSQL_USER: kanboard
      MYSQL_PASSWORD: kanboard-secret
    restart: always
    volumes:
    - ./db:/var/lib/mysql

volumes:
  data:
  plugins:
  # ssl:
  db:

networks:
  kanboard:
    external: false

Если все сделали правильно, то после создания проекта увидите код 0 означающий, что проект благополучно создался.

Немного подождите прежде чем переходить к следующему шагу. Нужно время для создания базы данных.

Ждите пока база не будет проинсталирована и мигрирована на нужную версию.

Теперь откройте новую вкладку в браузере и введите http://IP-NAS:8077. Тут вам нужно заменить IP-NAS на адрес вашего NAS устройства и порт, если вы заменили порт на свое значение. В открывшемся окне введите логин admin и пароль admin

Сразу после входа вы увидите такое окно

Рекомендую первым действием в настройках изменить язык на Русский и указать правильный часовой пояс. В этом же окне можно выставить URL вашего kanboard установленного на Synology. URL поможет генерировать правильные ссылки в почтовых и других уведомлениях.

Обратный прокси Kanboard на Synology

Можно сделать доступ к kanboard по доменному имени через обратный прокси. Откройте панель управления в DSM, портал для входа, дополнительно и обратный прокси. Создайте новое правило. Придумайте название правила. В источнике укажите https, имя домена, например kanboard.XXX.synology.me и 443 порт. В месте назначения укажите http, localhost и порт 8077.

Уведомления kanboard на почту

Для работы с проектами и задачами важно получать уведомления. Для уведомления на почту создайте в папке data файл config.php

Файл config.php должен иметь такое содержание:

<?php

/*******************************************************************/
/* Rename this file to config.php if you want to change the values */
/*                                                                 */
/* Make sure all paths are absolute by using __DIR__ where needed  */
/*******************************************************************/

// Enable/disable email configuration from the user interface
define('MAIL_CONFIGURATION', true);

// E-mail address used for the "From" header (notifications)
define('MAIL_FROM', 'replace-me@kanboard.local');

// E-mail address used for the "Bcc" header to send a copy of all notifications
define('MAIL_BCC', '');

// Mail transport available: "smtp", "sendmail", "mail" (PHP mail function)
define('MAIL_TRANSPORT', 'smtp');

/********************************************************************************* 
Исходящая почта Яндекс
Адрес почтового сервера — smtp.yandex.ru.
Защита соединения — SSL.
Порт — 465. Если почтовый клиент начинает соединение без шифрования — 587.
Для доступа к почтовому серверу укажите ваш логин и пароль приложения. 
Используйте тот пароль, который вы создали для почтового приложения на предыдущем шаге. 
Если вы настраиваете получение почты с ящика вида «login@yandex.ru», логином является часть адреса до знака «@». 
*********************************************************************************/

// SMTP configuration to use when the "smtp" transport is chosen
define('MAIL_SMTP_HOSTNAME', 'mail.example.ru'); 
define('MAIL_SMTP_PORT', 465);
define('MAIL_SMTP_USERNAME', 'username');
define('MAIL_SMTP_PASSWORD', 'password');
define('MAIL_SMTP_HELO_NAME', null); // valid: null (default), or FQDN
define('MAIL_SMTP_ENCRYPTION', "ssl"); // Valid values are null (not a string "null"), "ssl" or "tls"

Затем в настройках kanboard укажите почту, с которой будет рассылаться уведомления и почтовый транспорт smtp.

Рекомендую после этого рестартануть контейнер kanboard-app

Но это не все. У каждого пользователя должен быть указан почтовый ящик, а так же в уведомлениях включен email другие необходимые в этом окне параметры.

Только после этого будут приходить почтовые уведомления на соответствующий ящик соответствующему пользователю.

Уведомления kanboard в телеграм

Так же можно сделать уведомления в телеграм. Для этого в разделе плагины установите соответствующий плагин и действуйте согласно этой инструкции. Если не справитесь, то в разделе фриланс можно обратиться ко мне за помощью.

После настройки интеграции с телеграм, нужно включить уведомления у каждого пользователя в настройках.

Безопасность Kanboard

Защита от подбора пароля Kanboard работает на уровне учетной записи пользователя:

  • После 3 сбоев аутентификации для одного и того же имени пользователя в форме входа отображается изображение капчи, чтобы предотвратить автоматические предварительные ошибки бота.
  • После 6 сбоев аутентификации учетная запись пользователя блокируется на 15 минут.

Эта функция работает только для методов аутентификации, которые используют форму входа в систему.

Если вы не хотите ждать 15 минут, вы можете разблокировать пользователя из пользовательского интерфейса. Как администратор, перейдите в профиль пользователя и нажмите “Разблокировать этого пользователя”.

Эти настройки можно изменить используя все тот же файл config.php

// Enable captcha after 3 authentication failure
define('BRUTEFORCE_CAPTCHA', 3);

// Lock the account after 6 authentication failure
define('BRUTEFORCE_LOCKDOWN', 6);

// Lock account duration in minutes
define('BRUTEFORCE_LOCKDOWN_DURATION', 15);

Также не забывайте включать двухфакторную авторизацию. Это очень сильно повысит безопасность Kanboard.

Итог

Теперь вы знаете как выполнить установку сервера управление проектами Kanboard на Synology

Подписаться
Уведомить о
guest
9 Комментарий
Старые
Новые
Межтекстовые Отзывы
Посмотреть все комментарии