Гид по технологиям

Установка TaskBoard на CentOS 7

• 5 min read • DevOps • Обновлено 21 Nov 2025
Установка TaskBoard на CentOS 7
Установка TaskBoard на CentOS 7

TL;DR

TaskBoard — простое и свободное веб‑приложение для управления задачами, которое хранит данные в SQLite и требует минимум зависимостей. В этом руководстве показано, как обновить систему, установить Apache, PHP 7.1 и SQLite, развернуть TaskBoard в /var/www/taskboard, создать виртуальный хост и закончить установку в браузере.

Важно: инструкции написаны для root-пользователя. Если вы используете sudo‑пользователя, выполните sudo -i перед началом.

Кому предназначено это руководство

  • Системным администраторам и DevOps-инженерам, работающим с CentOS 7.
  • Тем, кто хочет развернуть TaskBoard быстро и без отдельного СУБД.

Основные шаги (коротко)

  1. Обновить систему.
  2. Установить Apache (httpd).
  3. Добавить репозитории и установить PHP 7.1 и SQLite.
  4. Скачать и распаковать TaskBoard, установить зависимости через Composer.
  5. Настроить права, файрвол и виртуальный хост.
  6. Завершить установку через веб‑интерфейс и сменить пароль администратора.

Обновление базовой системы

Перед установкой пакетов рекомендуется обновить систему и репозитории:

yum -y update

После обновления можно переходить к установке зависимостей.

Установка Apache

TaskBoard обслуживается веб‑сервером Apache. Установите httpd:

yum -y install httpd

Запустите Apache и включите автозапуск при загрузке:

systemctl start httpd
systemctl enable httpd

Установка PHP и SQLite

TaskBoard написан на PHP; для корректной работы требуется PHP 7.1 и модули. В официальном репозитории CentOS 7 PHP 7.1 по умолчанию нет — в руководстве используется репозиторий Webtatic и EPEL.

Установите EPEL:

yum -y install epel-release

Обновите пакеты:

yum -y update

Подключите Webtatic:

rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

Снова обновите метаданные:

yum -y update

Установите PHP 7.1 и необходимые модули:

yum -y install php71w php71w-json php71w-gd php71w-cli php71w-readline php71w-sqlite3

Проверьте установку PHP:

php -v

Вы должны увидеть вывод, похожий на следующий:

[root@centos ~]# php -v
PHP 7.1.7 (cli) (built: Jul  6 2017 12:10:28) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2017 Zend Technologies

Установите SQLite (используется как хранилище данных TaskBoard):

yum -y install sqlite

Примечание: если вы предпочитаете другой источник PHP (например, Remi), см. раздел «Альтернативные подходы».

Установка TaskBoard

Перейдите в каталог веб‑документов и скачайте архив с исходниками:

cd /var/www/
wget https://github.com/kiswa/TaskBoard/archive/master.zip

Распакуйте архив:

unzip master.zip

Если unzip не установлен, выполните:

yum -y install unzip

Переименуйте распакованную папку для удобства:

mv TaskBoard-master/ taskboard

Установите PHP‑зависимости через Composer (включённый в репозиторий TaskBoard):

./build/composer.phar install

После установки зависимостей назначьте владельца файлов web‑сервису Apache:

chown -R apache:apache /var/www/taskboard

Если на системе включён SELinux, проверьте и при необходимости примените контекст безопасности (см. раздел «Отладка и распространённые ошибки»).

Настройка файрвола и виртуального хоста

Разрешите HTTP‑трафик в firewalld:

firewall-cmd --zone=public --permanent --add-service=http
firewall-cmd --reload

Создайте виртуальный хост Apache (файл конфигурации):

nano /etc/httpd/conf.d/board.yourdomain.com.conf

Вставьте следующие строки в файл:


    ServerAdmin [email protected]
    DocumentRoot "/var/www/taskboard"
    ServerName board.yourdomain.com
    ServerAlias www.board.yourdomain.com
    
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
    
    ErrorLog "/var/log/httpd/board.yourdomain.com-error_log"
    CustomLog "/var/log/httpd/board.yourdomain.com-access_log" combined

Замените board.yourdomain.com на ваш домен или поддомен. Сохраните файл и перезапустите Apache:

systemctl restart httpd

Теперь откройте в браузере адрес:

http://board.yourdomain.com

Вы увидите страницу входа TaskBoard:

Экран приветствия TaskBoard после установки и первый экран входа

Войдите под учётной записью admin / admin и немедленно смените пароль на странице Настройки.

Страница Настройки TaskBoard — смена пароля и создание новой доски

Из настроек можно также создать новую доску.

Критерии приёмки

  • Веб‑интерфейс TaskBoard доступен по вашему домену и показывает страницу логина.
  • Войдя под admin / admin, вы можете сменить пароль через Настройки.
  • Файлы приложения принадлежат apache:apache и доступны веб‑серверу.
  • SQLite БД и файлы данных создаются и записи сохраняются при создании задач.

Отладка и распространённые ошибки

  • Проблемы с правами доступа: убедитесь, что chown выполнен корректно. Для проверки:
ls -la /var/www/taskboard
  • SELinux блокирует запись: временно проверьте работу с отключённым SELinux (или настройте правильный контекст):
setenforce 0

Если это решает проблему, примените постоянные метки:

semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/taskboard(/.*)?'
restorecon -Rv /var/www/taskboard
  • Composer не запускается: убедитесь, что PHP CLI установлен и доступен как php.
  • 404 при обращении к статике: проверьте AllowOverride All и наличие .htaccess в каталоге приложения.

Альтернативные подходы

  • Использовать репозиторий Remi вместо Webtatic для установки PHP (часто предпочтительнее для производителей пакетов). Это уменьшит зависимость от Webtatic.
  • Развернуть TaskBoard в Docker-контейнере: официального образа нет, но можно создать Dockerfile с Apache+PHP+SQLite и хранить данные на volume.
  • Хостинг на другом дистрибутиве (Ubuntu/Debian): команды пакетов будут отличаться (apt вместо yum).

Мини‑методология развёртывания

  1. Подготовка: обновление системы, резервирование, проверка домена и DNS.
  2. Установка базовых сервисов: Apache, PHP, SQLite.
  3. Развёртывание приложения: скачать, распаковать, установить зависимости, права доступа.
  4. Конфигурация: виртуальный хост, файрвол, SELinux контексты.
  5. Проверка: вход в приложение, изменение пароля, создание тестовой доски и задач.

Ролевые чек‑листы

  • Системный администратор:
    • Обновил систему.
    • Установил и запустил httpd.
    • Настроил SELinux/файрвол и права на файлы.
  • DevOps/Инженер по развёртыванию:
    • Развернул код в /var/www/taskboard.
    • Установил зависимости через Composer.
    • Создал виртуальный хост и настроил логирование.
  • Администратор приложения:
    • Вошёл под admin и сменил пароль.
    • Создал первую доску и тестовую задачу.

Совместимость и миграция

  • TaskBoard использует SQLite — если в будущем потребуется СУБД уровня сервера (MySQL, PostgreSQL), придётся реализовать экспорт/импорт вручную или использовать сторонние скрипты миграции.
  • При переходе с других ОС проверяйте пути к веб‑каталогу и SELinux/AppArmor.

Короткий план действий при инциденте (runbook)

  1. Проверить статус Apache: systemctl status httpd
  2. Проверить ошибки в логах: tail -n 200 /var/log/httpd/board.yourdomain.com-error_log
  3. Проверить права: ls -la /var/www/taskboard
  4. Проверить SELinux: getenforce; при необходимости временно setenforce 0 и проверить работу.
  5. Откат: если были изменены конфигурации, восстановить из бэкапа /etc/httpd/conf.d/ и /var/www/taskboard.

Краткий глоссарий (1‑строчно)

  • VirtualHost — конфигурация Apache для обслуживания домена/поддомена.
  • SELinux — подсистема безопасности ядра, контролирующая доступ приложений к файлам.
  • Composer — менеджер зависимостей PHP.
  • SQLite — встроенная файловая реляционная СУБД.

Итог

TaskBoard легко развернуть на CentOS 7: достаточно Apache, PHP 7.1 и SQLite. Приложение хранит данные в одном файле, что упрощает установку, но требует продуманного бэкапирования. После установки и настройки виртуального хоста завершите настройку через веб‑интерфейс и смените пароль администратора.

Подсказка: для продуктивного использования продумайте регулярные бэкапы каталога /var/www/taskboard и файла SQLite, а также настройку HTTPS (Let’s Encrypt) и мониторинг доступности.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро