Cómo instalar Roadiz CMS basado en Node con Nginx en Debian
Roadiz es un sistema de gestión de contenidos gratuito y de código abierto basado en un sistema de nodos. Roadiz te permite crear tu propio esquema de datos desde cero y organizar tu contenido como necesites. Roadiz está especialmente diseñado para que diseñadores y desarrolladores construyan juntos experiencias sólidas. Roadiz utiliza una interfaz centralizada de gestión de documentos que puedes utilizar para almacenar todas tus imágenes, vídeos y PDF. Roadiz te permite cambiar varios temas para una base de contenido.
En este tutorial, aprenderemos a instalar Roadiz en un servidor Debian 11.
Requisitos
- Un servidor que ejecute Debian 11.
- Una contraseña de root configurada en tu servidor.
Instalar Nginx, PHP, MariaDB
En primer lugar, debes instalar el servidor web Nginx, el servidor de bases de datos MariaDB, PHP y otras extensiones PHP necesarias en tu servidor. Puedes instalarlos todos con el siguiente comando:
apt-get install -y nginx mariadb-server php php-cli php-fpm php-common php-mysql php-mbstring php-gd php-intl php-xml php-curl php-zip php-pgsql php-sqlite3 php-opcache php-apcu curl unzip wget -y
Una vez instalados todos los paquetes necesarios, abre el archivo php.ini y realiza los cambios necesarios:
nano /etc/php/7.4/fpm/php.ini
Cambia las siguientes líneas:
memory_limit = 128M post_max_size = 16M upload_max_filesize = 16M date.timezone = Asia/Kolkata
Guarda y cierra el archivo. A continuación, inicia el servicio Nginx y MariaDB y habilítalos para que se inicien después de reiniciar con el siguiente comando:
systemctl start nginx systemctl enable nginx systemctl start mariadb systemctl enable mariadb
Una vez que hayas terminado, puedes pasar al siguiente paso.
Configurar la base de datos para Roadiz
A continuación, tendrás que crear una base de datos, un usuario de base de datos y una contraseña para Roadiz.
Para ello, accede al shell de MariaDB con el siguiente comando:
mysql -u roo -p
Introduce tu contraseña de root y, a continuación, crea una base de datos y un usuario para Roadiz con el siguiente comando:
MariaDB [(none)]> CREATE DATABASE roadizdb; MariaDB [(none)]> GRANT ALL ON roadizdb.* TO 'roadiz' IDENTIFIED BY 'password';
A continuación, vacía los privilegios y sal del intérprete de comandos MariaDB con el siguiente comando:
MariaDB [(none)]> FLUSH PRIVILEGES; MariaDB [(none)]> EXIT;
Una vez creada la base de datos, puedes pasar al siguiente paso.
Instalar Roadiz
En primer lugar, tendrás que descargar la última versión de Roadiz desde el repositorio Git al directorio raíz del documento Nginx. Puedes descargarla con el siguiente comando:
cd /var/www/html/ git clone https://github.com/roadiz/roadiz.git
Una vez finalizada la descarga, cambia el directorio a roadiz y abre el archivo config.mysql.travis.yml:
cd roadiz nano conf/config.mysql.travis.yml
Realiza los siguientes cambios según tu base de datos:
driver: "pdo_mysql" host: "localhost" user: "roadiz" password: "password" dbname: "roadizdb"
Guarda y cierra el archivo cuando hayas terminado.
A continuación, abre el archivo index.php y define tu dirección IP en la sección IP permitida:
nano install.php
Añade tu dirección IP como se muestra a continuación:
$allowedIp = [ '10.0.2.2', // vagrant host (forwarded) '192.168.33.1', // vagrant host (private) '127.0.0.1', 'fe80::1', '::1', ':ffff:127.0.0.1', '::ffff:127.0.0.1', 'YOUR-IP-ADDRESS' ];
Guarda y cierra el archivo. A continuación, tendrás que instalar Composer para instalar las dependencias PHP necesarias. Puedes instalarlo con el siguiente comando:
curl -sS https://getcomposer.org/installer -o composer-setup.php php composer-setup.php --install-dir=/usr/local/bin --filename=composer
Deberías ver la siguiente salida:
All settings correct for using Composer Downloading... Composer (version 1.8.6) successfully installed to: /usr/local/bin/composer Use it: php /usr/local/bin/composer
A continuación, instala todas las dependencias PHP necesarias con el siguiente comando:
composer install
A continuación, da los permisos adecuados al directorio roadiz:
chown -R www-data:www-data /var/www/html/roadiz chmod -R 755 /var/www/html/roadiz
Configurar Nginx para Roadiz
A continuación, crea un archivo de host virtual Nginx para Roadiz. Puedes hacerlo creando el archivo roadiz.conf en el directorio /etc/nginx/sites-available/.
nano /etc/nginx/sites-available/roadiz.conf
Añade las siguientes líneas:
server { listen 80; listen [::]:80; server_name example.com; root /var/www/html/roadiz/; index index.php; location / { try_files $uri $uri/ /index.php$is_args$args; } location ~ ^/(dev|install|preview|clear_cache)\.php(/|$) { fastcgi_pass unix:/var/run/php/php7.3-fpm.sock; fastcgi_split_path_info ^(.+\.php)(/.*)$; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name; fastcgi_param DOCUMENT_ROOT $realpath_root; } location ~ ^/index\.php(/|$) { fastcgi_pass unix:/var/run/php/php7.3-fpm.sock; fastcgi_split_path_info ^(.+\.php)(/.*)$; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name; fastcgi_param DOCUMENT_ROOT $realpath_root; internal; } }
Guarda y cierra el archivo. A continuación, habilita el archivo host virtual con el siguiente comando:
ln -s /etc/nginx/sites-available/roadiz.conf /etc/nginx/sites-enabled/
A continuación, comprueba si Nginx tiene algún error de sintaxis con el siguiente comando:
nginx -t
Por último, reinicia Nginx y el servicio PHP-FPM para aplicar todos los cambios de configuración:
systemctl restart nginx systemctl restart php7.4-fpm
Accede al panel de control de Roadiz
Ahora, abre tu navegador web y escribe la URL http://example.com/install.php. Serás redirigido a la siguiente página:
Selecciona tu idioma y haz clic en Requisitos. Deberías ver la siguiente página:
Asegúrate de que están instaladas todas las extensiones necesarias. A continuación, haz clic en el botón Base de datos. Deberías ver la siguiente página:
A continuación, proporciona los detalles de tu base de datos y haz clic en el botón Crear base de datos. Deberías ver la página siguiente:
A continuación, haz clic en el botón Tema. Verás la página siguiente:
A continuación, proporciona el nombre de tu sitio, la dirección de correo electrónico y haz clic en el botón Guardar información. Deberías ver la siguiente página:
A continuación, haz clic en el botón Realizar la instalación del tema. Deberías ver la siguiente página:
A continuación, haz clic en el botón Usuario para crear un usuario administrador. Aparecerá la siguiente página:
A continuación, proporciona los datos de tu usuario administrador y haz clic en el botón Crear usuario. Aparecerá la siguiente página:
A continuación, haz clic en el botón Hecho. Aparecerá la siguiente página:
Ahora, haz clic en el botón Salir de la instalación. Deberías ver la siguiente página:
Ahora, elimina el archivo install.php del directorio raíz del documento Roadiz con el siguiente comando:
rm -rf /var/www/html/roadiz/install.php
A continuación, abre tu navegador web y accede a tu interfaz de administración con la URL http://example.com/rz-admin. Serás redirigido a la página de inicio de sesión de Roadiz:
Proporciona tus datos de acceso y haz clic en el botón Iniciar sesión. Deberías ver el panel de control de Roadiz en la página siguiente:
Enhorabuena! has instalado correctamente Roadiz en el servidor Debian 10. No dudes en preguntarme si tienes alguna duda.