Wprowadzenie
Kanboard to bezpłatne oprogramowanie do zarządzania projektami o otwartym kodzie źródłowym, zaprojektowane w celu ułatwienia i wizualizacji przepływu pracy zespołu za pomocą metodologii Kanban.
W tym artykule dowiesz się, jak skonfigurować Kanboard na Ubuntu 18.04.
Wymagania wstępne
	- Instancja serwera Vultr Ubuntu 18.04, użyjemy 203.0.113.1jako przykładowego adresu IP.
- Użytkownik sudo .
Krok 1: Zaktualizuj system
Zaloguj się do serwera jako użytkownik sudo z terminala SSH, zaktualizuj system Ubuntu 18.04 i zainstaluj git. 
sudo apt update && sudo apt upgrade -y
sudo apt install -y git
sudo reboot
Po ponownym uruchomieniu zaloguj się ponownie jako ten sam użytkownik sudo i przejdź do następnego kroku.
Krok 2: Zainstaluj Apache
Zainstaluj serwer WWW Apache 2.4 dla Kanboard.
sudo apt install apache2 -y
Uruchom i włącz usługę Apache.
sudo systemctl enable --now apache2.service
Krok 3: Zainstaluj MariaDB
Domyślnie Kanboard używa SQLite do przechowywania swoich danych. Alternatywnie możesz użyć MariaDB (MySQL) w celu zwiększenia wydajności w środowisku produkcyjnym.
Zainstaluj MariaDB.
sudo apt install -y mariadb-server mariadb-client
Uruchom i włącz usługę MariaDB.
sudo systemctl enable --now mariadb.service
Zabezpiecz instalację.
sudo mysql_secure_installation
Odpowiedz na pytania na ekranie, jak pokazano poniżej. Ze względów bezpieczeństwa należy zawsze ustawić prywatne i silne hasło roota MariaDB.
Enter current password for root (enter for none): Enter
Set root password? [Y/n]: Y
New password: <your-password>
Re-enter new password: <your-password>
Remove anonymous users? [Y/n]: Y
Disallow root login remotely? [Y/n]: Y
Remove test database and access to it? [Y/n]: Y
Reload privilege tables now? [Y/n]: Y
Krok 4: Zainstaluj PHP 7
Kanboard wymaga PHP 5.3.9 lub nowszego. Będziemy używać PHP 7.2 (i kilku rozszerzeń), która jest domyślną wersją dostępną w oficjalnych repozytoriach Ubuntu.
sudo apt install -y php7.2 php7.2-mysql php7.2-gd php7.2-mbstring php7.2-common php7.2-opcache php7.2-cli php7.2-xml
Krok 5: Zainstaluj Kanboard
Pobierz i zainstaluj najnowszą wersję Kanboard.
cd /var/www/html
sudo git clone https://github.com/kanboard/kanboard.git
sudo chown -R www-data:www-data kanboard/data
Skonfiguruj bazę danych MySQL i użytkownika bazy danych dla Kanboard.
mysql -u root -p -e "CREATE DATABASE kanboard;"
mysql -u root -p kanboard < /var/www/html/kanboard/app/Schema/Sql/mysql.sql
mysql -u root -p -e "CREATE USER 'kanboarduser'@'localhost' IDENTIFIED BY 'yourpassword';"
mysql -u root -p -e "GRANT ALL PRIVILEGES ON kanboard.* TO 'kanboarduser'@'localhost' IDENTIFIED BY 'yourpassword' WITH GRANT OPTION;"
mysql -u root -p -e "FLUSH PRIVILEGES;"
Uwaga:  Po wyświetleniu monitu wprowadź hasło administratora MariaDB, które wcześniej skonfigurowałeś. Powinieneś także wybrać silne hasło użytkownika inne niż pokazane powyżej.
Zaktualizuj plik konfiguracyjny Kanboard, aby przejść do MySQL.
cd /var/www/html/kanboard
sudo mv config.default.php config.php
Otwórz config.phpw wybranym edytorze tekstu.
sudo vi config.php
Znajdź następujące linie.
// Database driver: sqlite, mysql or postgres (sqlite by default)
define('DB_DRIVER', 'sqlite');
// Mysql/Postgres username
define('DB_USERNAME', 'root');
// Mysql/Postgres password
define('DB_PASSWORD', '');
// Mysql/Postgres hostname
define('DB_HOSTNAME', 'localhost');
// Mysql/Postgres database name
define('DB_NAME', 'kanboard');
Zmodyfikuj je w następujący sposób.
// Database driver: sqlite, mysql or postgres (sqlite by default)
define('DB_DRIVER', 'mysql');
// Mysql/Postgres username
define('DB_USERNAME', 'kanboarduser');
// Mysql/Postgres password
define('DB_PASSWORD', 'yourpassword');
// Mysql/Postgres hostname
define('DB_HOSTNAME', 'localhost');
// Mysql/Postgres database name
define('DB_NAME', 'kanboard');
Uruchom ponownie Apache.
sudo systemctl restart apache2.service
Na koniec skieruj przeglądarkę internetową, http://203.0.113.1/kanboardaby rozpocząć korzystanie z Kanboard. Użyj następujących domyślnych danych logowania, aby się zalogować:
	- Nazwa Użytkownika: admin
- Hasło: admin
Uwaga:  Ze względów bezpieczeństwa pamiętaj o modyfikacji adminhasła za pomocą users managementlinku z menu rozwijanego administratora po prawej stronie.
Krok 6 (Opcjonalnie): Skonfiguruj Zend OpCache
Aby osiągnąć najlepszą wydajność na serwerze Kanboard, możesz dostosować ustawienia Zend OpCache, który jest domyślnie włączony.
Na przykład, gdy korzystasz z Kanboard w konfiguracji z jednym węzłem w środowisku produkcyjnym, jak zamierzaliśmy w tym artykule, możesz użyć następujących ustawień jako startera do optymalizacji Zend OpCache.
Otwórz plik konfiguracyjny Zend OpCache.
sudo vi /etc/php/7.2/apache2/conf.d/10-opcache.ini
Zmodyfikuj plik zgodnie z następującymi ustawieniami.
zend_extension=opcache.so;
opcache.enable=1;
opcache.file_cache=/tmp/opcache
opcache.validate_timestamps=0
opcache.revalidate_freq=0
opcache.memory_consumption=192
opcache.interned_strings_buffer=16
opcache.max_accelerated_files=1979
opcache.fast_shutdown=1
Uruchom ponownie usługę Apache, aby wprowadzić zmiany.
sudo systemctl restart apache2.service
Krok 7 (Opcjonalnie): Skonfiguruj codzienne zadanie CRON dla raportów i analiz
Aby wygenerować dokładne raporty i analizy, musisz skonfigurować codzienne zadanie cron przy użyciu www-dataużytkownika.
sudo crontab -u www-data -e
Wypełnij plik crontab następującym cronjob.
0 3 * * * cd /var/www/html/kanboard && ./cli cronjob >/dev/null 2>&1
Zapisz i wyjdź.
Dzięki temu zadaniu cron wszystkie raporty i analizy będą aktualizowane codziennie o 3:00.