如何在Debian 9上安装Kanboard
杨和超
・8 分钟阅读
使用不同的系统?
介绍
Kanboard是一个免费的开放源代码项目管理软件程序,旨在使用Kanboard方法促进和可视化团队工作流程。
本文将向你展示如何在Debian 9.上设置Kanboard。
前提条件
- 在Debian 9服务器实例中,我们将使用
203.0.113.1
作为例子IP地址, - 一个sudo用户 ,
步骤1:更新系统
从SSH终端以sudo用户身份登录服务器,更新Debian 9系统,并且安装git 。
sudo apt update && sudo apt upgrade -y
sudo apt install -y git
sudo reboot
重新启动后,以相同的sudo用户登录,然后继续下一步。
步骤2:安装Apache
安装用于Kanboard的Apache 2.4 Web服务器。
sudo apt install apache2 -y
启动并启用Apache服务。
sudo systemctl enable --now apache2.service
步骤3:安装MariaDB
默认情况下,Kanboard使用SQLite存储它数据,或者,你可以使用MariaDB (MySQL )来增强生产环境中的性能。
安装MariaDB 。
sudo apt install -y mariadb-server mariadb-client
启动并启用MariaDB服务。
sudo systemctl enable --now mariadb.service
保护安装。
sudo mysql_secure_installation
回答屏幕上的问题如下所示,出于安全目的,你应该始终设置私有和强强健的MariaDB root密码。
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
步骤4:安装PHP 7
Kanboard需要PHP 5.3.9或更高版本。我们将使用PHP 7.0 (还有几个扩展),它是官方Debian仓库中可用的缺省版本。
sudo apt install -y php php-mysql php-gd php-mbstring php-common php-ldap php-opcache php-cli php-xml
步骤5:安装Kanboard
下载并安装最新版本的Kanboard 。
cd /var/www/html
sudo git clone https://github.com/kanboard/kanboard.git
sudo chown -R www-data:www-data kanboard/data
为Kanboard设置一个MySQL数据库和一个数据库用户。
sudo mysql -u root -p -e"CREATE DATABASE kanboard;"
sudo mysql -u root -p kanboard < /var/www/html/kanboard/app/Schema/Sql/mysql.sql
sudo mysql -u root -p -e"CREATE USER 'kanboarduser'@'localhost' IDENTIFIED BY 'yourpassword';"
sudo mysql -u root -p -e"GRANT ALL PRIVILEGES ON kanboard.* TO 'kanboarduser'@'localhost' IDENTIFIED BY 'yourpassword' WITH GRANT OPTION;"
sudo mysql -u root -p -e"FLUSH PRIVILEGES;"
注意:当提示时,输入你先前设置的MariaDB root密码,
更新Kanboard配置文件以切换到MySQL 。
cd /var/www/html/kanboard
sudo mv config.default.php config.php
使用你选择的文本编辑器打开config.php
。
sudo vi config.php
查找下列行。
// 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');
按如下方式修改它们。
// 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');
重启Apache 。
sudo systemctl restart apache2.service
最后,将你的Web浏览器指向http://203.0.113.1/kanboard
以开始使用Kanboard ,使用以下默认凭据登录:
- 用户名:
admin
- 密码:
admin
注意:为了安全起见,请记住使用右上方的admin
下拉菜单中的users management
链接修改的密码。
步骤6(可选):设置Zend Opcache
为了在Kanboard服务器上获得最佳性能,你可以调整Zend OpCache的设置,默认情况下已启用Zend OpCache 。
例如,如本文所述,当在生产中的单个节点设置上使用Kanboard时,可以使用以下设置作为优化Zend OpCache的开始。
打开Zend OpCache配置文件。
sudo vi /etc/php/7.0/apache2/conf.d/10-opcache.ini
按照下列设置修改文件。
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
重启Apache服务,使你的更改生效。
sudo systemctl restart apache2.service
步骤7(可选):为报表和分析设置每日cron作业
为了生成准确的报告和分析,你需要使用www-data
用户设置每日的cron作业。
sudo crontab -u www-data -e
用以下cronjob填充crontab文件。
0 3 * * * cd /var/www/html/kanboard && ./cli cronjob >/dev/null 2>&1
保存并退出。
通过此cron作业,所有报告和分析将在每天凌晨3:00更新。