Cómo instalar el software de gestión de proyectos Kanboard en Debian 10
Kanboard es un software de gestión de proyectos gratuito, de código abierto y autoalojado que puede utilizarse para gestionar proyectos utilizando la metodología Kanban. Puedes visualizar el flujo de trabajo, limitar el trabajo en curso y trabajar eficazmente desde la interfaz web de Kanboard. Kanban te permite personalizar tus tableros según tus necesidades. Puedes ampliar la funcionalidad de Kanbord con plugins y servicios de terceros.
En este tutorial, te guiaremos paso a paso sobre cómo instalar y configurar Kanboard en Debian 10.
Requisitos
- Un servidor que ejecute Debian 10.
- Una contraseña de root configurada en tu servidor.
Cómo empezar
Se recomienda actualizar tu sistema con la última versión. Puedes actualizar todos los paquetes con el siguiente comando:
apt-get update -y apt-get upgrade -y
Una vez actualizados todos los paquetes, reinicia tu sistema para aplicar los cambios de configuración.
Instalar el servidor LEMP
Kanboard se ejecuta en el servidor web, escrito en PHP y utiliza MariaDB para el backend de la base de datos. Por lo tanto, necesitarás instalar Nginx, MariaDB, PHP y otros módulos PHP en tu sistema.
apt-get install nginx mariadb-server php7.3 php7.3-common php7.3-cli php7.3-fpm php7.3-mbstring php7.3-json php7.3-opcache php7.3-zip php7.3-xml php7.3-gd php7.3-ldap php7.3-mysql php7.3-json php7.3-sqlite3
Una vez completada la instalación, inicia el servicio Nginx y MariaDB, y habilítalos para que se inicien tras reiniciar el sistema con el siguiente comando:
systemctl start nginx systemctl start mariadb systemctl enable nginx systemctl enable mariadb
Configurar MariaDB para Kanboard
Por defecto, MariaDB no está protegida, por lo que se recomienda protegerla. Puedes asegurarlo ejecutando el siguiente script.
mysql_secure_installation
Responde a todas las preguntas como se muestra a continuación:
Enter current password for root (enter for none): Set root password? [Y/n]: N 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
Una vez que MariaDB esté protegida, accede al shell de MariaDB:
mysql -u root -p
Introduce tu contraseña de root cuando se te pida, y luego crea una base de datos y un usuario para Kanboard:
MariaDB [(none)]>CREATE DATABASE kanboard CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
A continuación, concede todos los privilegios a la base de datos Kanboard con el siguiente comando:
MariaDB [(none)]>GRANT ALL PRIVILEGES ON kanboard.* TO 'kanboard'@'localhost' IDENTIFIED BY 'mypassword';
Sustituye la palabra ‘micontraseña‘ por una contraseña segura de tu elección en el comando SQL anterior. A continuación, elimina los privilegios con el siguiente comando:
MariaDB [(none)]>FLUSH PRIVILEGES;
Por último, sal del intérprete de comandos MariaDB con el siguiente comando:
MariaDB [(none)]>\q
Instalar Kanboard
En primer lugar, descarga la última versión de Kanboard desde el repositorio Git con el siguiente comando:
wget https://github.com/kanboard/kanboard/archive/v1.2.10.tar.gz
Una vez finalizada la descarga, extrae el archivo descargado con el siguiente comando:
tar -xvf v1.2.10.tar.gz
A continuación, copia el directorio extraído al directorio raíz web de Apache con el siguiente comando:
cp -r kanboard-1.2.10 /var/www/html/kanboard
A continuación, copia el archivo de configuración de ejemplo de Kanboard con el siguiente comando:
cd /var/www/html/kanboard cp config.default.php config.php
A continuación, abre el archivo config.php con tu editor preferido:
nano config.php
Define la configuración de tu base de datos como se muestra a continuación:
// Database driver: sqlite, mysql or postgres (sqlite by default) define('DB_DRIVER', 'mysql'); // Mysql/Postgres username define('DB_USERNAME', 'kanboard'); // Mysql/Postgres password define('DB_PASSWORD', 'password'); // Mysql/Postgres hostname define('DB_HOSTNAME', 'localhost'); // Mysql/Postgres database name define('DB_NAME', 'kanboard');
Guarda y cierra el archivo cuando hayas terminado. A continuación, establece los permisos adecuados con el siguiente comando:
chown -R www-data:www-data /var/www/html/kanboard
Cuando hayas terminado, puedes pasar al siguiente paso.
Configurar Nginx para Kanboard
A continuación, tendrás que crear un archivo de host virtual Nginx para Kanboard. Puedes crearlo con el siguiente comando:
nano /etc/nginx/conf.d/kanboard.conf
Añade las siguientes líneas:
server { listen 80; server_name example.com; index index.php; root /var/www/html/kanboard; client_max_body_size 32M; location / { try_files $uri $uri/ /index.php$is_args$args; } location ~ \.php$ { try_files $uri =404; fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/var/run/php/php7.3-fpm.sock; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_index index.php; include fastcgi_params; } location ~* ^.+\.(log|sqlite)$ { return 404; } location ~ /\.ht { return 404; } location ~* ^.+\.(ico|jpg|gif|png|css|js|svg|eot|ttf|woff|woff2|otf)$ { log_not_found off; expires 7d; etag on; } gzip on; gzip_comp_level 3; gzip_disable "msie6"; gzip_vary on; gzip_types text/javascript application/javascript application/json text/xml application/xml application/rss+xml text/css text/plain; }
Guarda y cierra el archivo cuando hayas terminado. A continuación, comprueba si Nginx tiene algún error de sintaxis con el siguiente comando:
nginx -t
Deberías ver la siguiente salida:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
Por último, reinicia Nginx y el servicio php-fpm con el siguiente comando:
systemctl restart nginx systemctl restart php7.3-fpm
Puedes comprobar el estado del servicio Nginx con el siguiente comando:
systemctl status nginx
Deberías ver la siguiente salida:
? nginx.service - A high performance web server and a reverse proxy server Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled) Active: active (running) since Sat 2019-07-13 06:05:09 EDT; 26s ago Docs: man:nginx(8) Process: 13412 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS) Process: 13413 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS) Main PID: 13414 (nginx) Tasks: 2 (limit: 1138) Memory: 2.9M CGroup: /system.slice/nginx.service ??13414 nginx: master process /usr/sbin/nginx -g daemon on; master_process on; ??13415 nginx: worker process Jul 13 06:05:09 debian systemd[1]: Starting A high performance web server and a reverse proxy server... Jul 13 06:05:09 debian systemd[1]: nginx.service: Failed to parse PID from file /run/nginx.pid: Invalid argument Jul 13 06:05:09 debian systemd[1]: Started A high performance web server and a reverse proxy server.
Accede a la interfaz web de Kanboard
Kanboard ya está instalado y configurado, es hora de acceder a la interfaz web de Kanboard.
Abre tu navegador web y escribe la URL http://example.com. Se te redirigirá a la siguiente página:
Introduce el nombre de usuario y la contraseña de administrador por defecto como admin / admin y haz clic en el botón Iniciar sesión. Deberías ver el panel de control por defecto de Kanboard en la siguiente página:
Se recomienda cambiar la contraseña de administrador por defecto. Para ello, ve a Admin > Gestión de Usuarios > admin. Deberías ver la siguiente página:
Ahora, haz clic en el botón Cambiar contraseña. Deberías ver la siguiente página:
proporciona tu nueva contraseña y haz clic en el botón Guardar.
Enhorabuena! has instalado y configurado correctamente Kanboard en Debian 10. Ahora puedes gestionar tus tareas fácilmente desde la interfaz web de Kanboard. No dudes en preguntarme si tienes alguna duda.