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

Как установить TaskBoard на Ubuntu 18.04

• 5 min read • Руководство • Обновлено 16 Nov 2025
Установка TaskBoard на Ubuntu 18.04
Установка TaskBoard на Ubuntu 18.04

Скриншот интерфейса TaskBoard

Оглавление

  • Требования
  • Быстрый старт
  • Установка Java
  • Установка Apache, SQLite и PHP
  • Установка TaskBoard
  • Настройка Apache для TaskBoard
  • Доступ к веб-интерфейсу
  • Альтернативные подходы
  • Безопасность и эксплуатация
  • Проверочный чеклист
  • Решение проблем
  • Краткое резюме

Требования

  • Сервер с Ubuntu 18.04.
  • Доступ root или пользователь с правами sudo и установленный пароль.

Важно: этот гайд ориентирован на Ubuntu 18.04 и PHP 7.2, как в оригинальном руководстве.

Быстрый старт

Станьте root-пользователем:

sudo -s

Обновите систему до последних пакетов:

sudo apt-get update -y  
sudo apt-get upgrade -y

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

Установка Java

TaskBoard в этом руководстве требует Java (оригинальный пример использует Oracle Java 8). По умолчанию в репозитории Ubuntu 18.04 может не быть нужной версии, поэтому авторы использовали PPA.

Добавление репозитория (как в оригинале):

add-apt-repository ppa:webupd8team/java

Установка Oracle Java 8:

apt-get install oracle-java8-installer -y

Проверка версии Java:

java -version

Ожидаемый вывод (пример):

java version "1.8.0_201"
Java(TM) SE Runtime Environment (build 1.8.0_201-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.201-b09, mixed mode)

Примечание: если вы не можете или не хотите использовать Oracle Java, можно установить OpenJDK 8 через пакеты openjdk-8-jdk.

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

TaskBoard — PHP-приложение с хранением в SQLite и работает через веб-сервер Apache. Установите все необходимые пакеты:

apt-get install apache2 sqlite3 php7.2 libapache2-mod-php7.2 php7.2-cli php7.2-common php7.2-json php7.2-readline php7.2-sqlite3 libaio1 libapr1 libhtml-template-perl libaprutil1-dbd-sqlite3 libaprutil1-ldap libaprutil1 libdbi-perl libterm-readkey-perl curl libwrap0 unzip wget -y

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

systemctl start apache2  
systemctl enable apache2

Совет: проверьте, что PHP модуль для Apache загружен и что php -v показывает PHP 7.2.

Установка TaskBoard

Скачайте последнюю версию TaskBoard из репозитория GitHub:

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

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

unzip master.zip

Переместите файл в корень веб-сервера Apache:

mv TaskBoard-master /var/www/html/taskboard

Перейдите в каталог TaskBoard и обновите Composer:

cd /var/www/html/taskboard  
./build/composer.phar self-update

Ожидаемый вывод (пример):

Updating to version 522ea033a3c6e72d72954f7cd019a3b75e28f391.
    Downloading: 100%         
Use composer self-update --rollback to return to version feefd51565bb8ead38e355b9e501685b5254d0d5

Установите PHP зависимости через Composer:

./build/composer.phar install

Ожидаемый фрагмент вывода:

Do not run Composer as root/super user! See https://getcomposer.org/root for details
Loading composer repositories with package information
Installing dependencies (including require-dev) from lock file
Package operations: 5 installs, 0 updates, 0 removals
  - Installing firebase/php-jwt (1.0.0): Downloading (100%)         
  - Installing gabordemooij/redbean (v4.2.1): Downloading (100%)         
  - Installing ircmaxell/password-compat (v1.0.4): Downloading (100%)         
  - Installing phpmailer/phpmailer (v5.2.14): Downloading (100%)         
  - Installing slim/slim (2.6.2): Downloading (100%)         
Generating autoload files

Сборка JavaScript и CSS:

./build/build-all

Ожидаемый вывод (пример):

Building...
 Installing dependencies
Do not run Composer as root/super user! See https://getcomposer.org/root for details
Loading composer repositories with package information
Installing dependencies (including require-dev) from lock file
Nothing to install or update
Generating autoload files
 Compiling lib JS files...
 Minifying lib CSS files...
 Compiling app JS files...
 Minifying app CSS files...
 Updating index.html...
Build Complete

Выдайте веб-серверу права на каталог TaskBoard:

chown -R www-data:www-data /var/www/html/taskboard  
chmod -R 755 /var/www/html/taskboard

Настройка Apache для TaskBoard

Создайте виртуальный хост:

nano /etc/apache2/sites-available/taskboard.conf

Добавьте содержимое конфигурации (замените ServerName и ServerAdmin на свои значения):

 
    ServerAdmin [email protected]
    DocumentRoot "/var/www/html/taskboard"
    ServerName 1example.com
    
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
    
    ErrorLog "/var/log/apache2/taskboard-error_log"
    CustomLog "/var/log/apache2/taskboard-access_log" combined

Сохраните файл и включите сайт:

a2ensite taskboard.conf

Включите модуль перезаписи URL и перезапустите Apache:

a2enmod rewrite  
 systemctl restart apache2

Если Apache не перезапускается, проверьте синтаксис конфигурации:

apachectl configtest

Доступ к веб-интерфейсу

Откройте в браузере адрес вашего домена, например:

http://example.com

На странице входа используйте учётные данные по умолчанию:

  • Имя пользователя: admin
  • Пароль: admin

Экран входа в TaskBoard

После входа смените пароль в разделе «Settings» → «Update password».

Стартовая страница TaskBoard после входа

Добавьте новую доску (Board), задайте имя и столбцы, затем подтвердите кнопку «Add Board».

Окно добавления доски в TaskBoard

Пример конфигурации колонок доски

Добавьте колонны и нажмите + для добавления элементов.

Добавление карточек и колонок в TaskBoard

Перейдите на домашнюю страницу и выберите только что созданную доску.

Рабочая доска TaskBoard

Поздравляем — TaskBoard установлен и готов к использованию.

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

  • Docker: есть образы и способы запустить TaskBoard в контейнере (предпочтительно для изоляции и простоты деплоя). Контейнер позволяет не трогать глобальные пакеты системы.
  • OpenJDK вместо Oracle Java: проще для автоматизации и совместимости с пакетными менеджерами.
  • Виртуальные окружения PHP / провайдеры PaaS: если вы используете облачный хостинг, можно воспользоваться поставщиком, который поддерживает PHP и SQLite.

Безопасность и эксплуатация

Важно:

  • Смените пароль администратора после первого входа.
  • Ограничьте доступ к панели администратора через файрвол (ufw) и/или настройте доступ по IP, если нужно.
  • Используйте HTTPS: настройте SSL (Let’s Encrypt) и перенаправление с HTTP на HTTPS.
  • Резервное копирование: регулярно резервируйте каталог /var/www/html/taskboard и файл базы данных SQLite (обычно в каталоге TaskBoard).
  • Права доступа: держите файлы принадлежащими www-data и не давайте прав 777.

Рекомендации по HTTPS (кратко)

  1. Установите certbot: apt-get install certbot python3-certbot-apache -y.
  2. Запустите: certbot --apache -d example.com и следуйте инструкциям.

Проверочный чеклист

Для администратора:

  • Сервер обновлён и перезагружен.
  • Установлены Apache, PHP 7.2, SQLite.
  • [ ] Установлен Composer и выполнён ./build/composer.phar install.
  • Правильно настроен виртуальный хост Apache.
  • Разрешён модуль rewrite и Apache успешно перезапускается.
  • Домен указывает на сервер и доступен по HTTP/HTTPS.
  • Пароль администратора изменён.
  • Настроены регулярные бэкапы базы данных и файлов.

Для пользователя:

  • Создана хотя бы одна доска.
  • Добавлены колонки и задачи.
  • Установлены уведомления (если применимо).

Решение проблем

  • Apache не стартует: выполните journalctl -xe и apachectl configtest для диагностики.
  • Ошибки Composer: не запускайте composer от root без нужды; используйте sudo только при необходимости, либо выполните сборку под учётной записью с правами, а затем выдайте права www-data.
  • Ошибка доступа к файлам: проверьте владельца и права chown -R www-data:www-data /var/www/html/taskboard.
  • Проблемы с PHP: убедитесь, что модуль php7.2-sqlite3 установлен и загружен.

Дополнения для эксплуатации

Ментальная модель развертывания:

  1. Подготовка сервера (обновления, базовые пакеты).
  2. Установка зависимостей (Java, Apache, PHP, SQLite).
  3. Развёртывание кода и зависимостей (Composer, сборка фронтенда).
  4. Настройка веб-сервера и HTTPS.
  5. Тестирование и переключение в эксплуатацию.

Мини-методология бэкапа:

  • Экспортируйте/копируйте файл базы данных SQLite ежесуточно.
  • Сохраняйте архив каталога TaskBoard каждую неделю.
  • Храните резервные копии вне хоста (S3, удалённый сервер).

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

  • Веб-интерфейс доступен по URL и загружается без ошибок.
  • Войти можно с учётными данными admin/admin и затем сменить пароль.
  • Создание доски и колонок работает, карточки добавляются и перемещаются.
  • Все статические ресурсы (JS/CSS) собраны и загружаются корректно.

Краткое резюме

Вы установили TaskBoard на Ubuntu 18.04: подготовили сервер, установили Java и стек LAMP-компонентов, развернули исходники, собрали зависимости и настроили Apache. Рекомендуется включить HTTPS, настроить бэкапы и следить за правами доступа.

Важно: если вам нужен более безопасный и удобный способ деплоя, рассмотрите запуск в Docker или использование OpenJDK вместо Oracle Java.

Если нужны команды для Docker или пример systemd юнита для контейнера — могу подготовить отдельно.

Поделиться: 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 быстро