GNU/Linux >> Tutoriales Linux >  >> Rocky Linux

Cómo instalar Wikijs en Rocky Linux

Wiki.js es un software wiki de código abierto escrito en JavaScript y que se ejecuta en el tiempo de ejecución de Node.js, se publica bajo la licencia APGL-v3. Wiki.js es un software wiki liviano y poderoso con una interfaz de usuario hermosa e intuitiva, está diseñado para la web moderna. Wiki.js es un software wiki muy extensible y adecuado para diferentes tipos de documentos e implementaciones, puede ser utilizado tanto por personas técnicas como no técnicas.

Wiki.js está respaldado por varios tipos de módulos para ampliar sus características y convertirlo en un software wiki poderoso y extensible. Algunas características destacadas y predeterminadas de Wiki.js se muestran a continuación:

  • Admite múltiples bases de datos (PostgreSQL, MySQL, SQLite y MSSQL Server).
  • Múltiples editores, incluido Markdown para desarrolladores, WYSIWYG para personas sin conocimientos técnicos, código y Tabular (similar a Excel)
  • Motor de búsqueda integrado basado en bases de datos, también compatible con otro motor de búsqueda como Apache Solr, Elasticsearch, etc.
  • Admite múltiples almacenamientos de datos para copias de seguridad como Git, sFTP, AWS S3, Google Drive, Dropbox, etc.

En esta guía, aprenderá cómo instalar Wiki.js en el servidor Rocky Linux. Instalará Wiki.js con la última versión LTS de Node.js, usará PostgreSQL como su base de datos principal y usará el servidor web Nginx como proxy inverso.

Requisitos

  • Un sistema Rocky Linux. Asegúrese de que todos los paquetes y repositorios estén actualizados a la última versión
  • Un usuario root o un usuario con privilegios de root. Utilizará este usuario para instalar nuevos paquetes y editar configuraciones del sistema.

Instalando Nodejs en Rocky Linux

Primero, instalará Node.js en Rocky Linux. Y, de forma predeterminada, el repositorio de AppStream proporciona varias versiones LTS de Node.js.

1. Verifique el módulo de repositorio para 'nodejs ' ejecutando el siguiente comando.

sudo dnf module list nodejs

Verá varias versiones del módulo Node.js.

2. Habilite 'nodejs:14 ' módulo de repositorio usando el siguiente comando.

sudo dnf module enable nodejs:14

Escriba 'y ' para habilitar el 'nodejs:14 ' módulo de repositorio.

3. A continuación, ejecute el siguiente comando para instalar los paquetes Node.js y npm.

sudo dnf install nodejs npm

Escriba 'y ' y presione 'Entrar ' para confirmar la instalación.

4. Una vez completada la instalación, ejecute el siguiente comando para comprobar las versiones de Node.js y npm.

node --version
npm --version

Verá un resultado similar al siguiente.

# Node.js version
v14.17.3

# NPM version
6.14.13

Instalando la base de datos PostgreSQL

Para esta etapa, instalará PostgreSQL desde el repositorio oficial de PostgreSQL. Para producción, se recomienda utilizar PostgreSQL como base de datos principal para Wiki.js.

1. Ahora ejecute el siguiente comando para agregar el repositorio de PostgreSQL al sistema Rocky Linux.

sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm

2. Deshabilite el repositorio predeterminado de Rocky Linux PostgreSQL usando el siguiente comando.

sudo dnf module -qy disable postgresql

3. A continuación, ejecute el siguiente comando para instalar PostgreSQL 13 en el servidor Rocky Linux.

sudo dnf install postgresql13-server

Escriba 'y ' y presione 'Entrar ' para continuar con la instalación.

4. Si la instalación de PostgreSQL está completa, ejecute el siguiente comando para inicializar la base de datos de PostgreSQL, inicie y habilite el servicio de PostgreSQL.

Inicialice la base de datos PostgreSQL usando el siguiente comando.

sudo /usr/pgsql-13/bin/postgresql-13-setup initdb

Habilite PostgreSQL para que se inicie automáticamente al iniciar el sistema con el siguiente comando.

sudo systemctl enable postgresql-13

Ahora inicie el servicio PostgreSQL y verifique su estado usando el siguiente comando.

sudo systemctl start postgresql-13
sudo systemctl status postgresql-13

Si su servicio PostgreSQL se está ejecutando, verá la salida del mensaje como 'activo (en ejecución) ' como la captura de pantalla a continuación.

Crear nueva base de datos y usuario

Después de instalar el servidor PostgreSQL, creará una nueva base de datos y un nuevo usuario para la instalación de Wiki.js.

1. Ejecute el siguiente comando para iniciar sesión en el shell de PostgreSQL.

sudo -u postgres psql

2. Cree un nuevo nombre de usuario de PostgreSQL 'wiki ' con la contraseña 'wikijspassworddb ' usando la siguiente consulta.

CREATE USER wiki WITH 
CREATEDB
PASSWORD 'wikijspassworddb';

3. Ahora cree un nuevo nombre de base de datos 'wikidb ' y hacer que el usuario sea 'wiki ' como propietario de la base de datos utilizando la consulta de PostgreSQL a continuación.

CREATE DATABASE wikidb OWNER wiki;

Ahora escribe '\q ' para salir del shell de PostgreSQL.

Opcionalmente, puede verificar el usuario y la base de datos utilizando las consultas a continuación.

# Check available users
\du

# Display list of databases
\l

Descargando y configurando Wiki.js

Para esta guía, ejecutará Wiki.js como un servicio y como usuario no root.

1. Ejecute el siguiente comando para crear un nuevo usuario 'wiki ' para la instalación de Wiki.js.

sudo adduser --system --user-group --no-create-home --shell /sbin/nologin wiki

2. Cree un nuevo directorio '/var/wiki' y cambie el directorio de trabajo en él. Luego ejecute el comando wget para descargar la última versión estable del código fuente de Wiki.js.

mkdir -p /var/wiki; cd /var/wiki/
wget https://github.com/Requarks/wiki/releases/download/2.5.201/wiki-js.tar.gz

Si el proceso de descarga está completo, extraiga el código fuente de Wiki.js usando el comando tar a continuación.

tar -xf wiki-js.tar.gz

3. A continuación, copie la configuración de ejemplo de Wiki.js en 'config.yml' y edítela con nano.

cp config.sample.yml config.yml
nano config.yml

Cambie los detalles del nombre de la base de datos, el usuario y la contraseña como se muestra a continuación.

db:
  type: postgres

  # PostgreSQL / MySQL / MariaDB / MS SQL Server only:
  host: localhost
  port: 5432
  user: wiki
  pass: wikijspassworddb
  db: wikidb
  ssl: false

Pon el '#' delante de la opción de almacenamiento de SQLite como se muestra a continuación.

  # SQLite only:
  #storage: path/to/database.sqlite

Cambie la 'bindIP ' opción a '127.0.0.1 ' para ejecutar Wiki.js solo en IP local.

# ---------------------------------------------------------------------
# IP address the server should listen to
# ---------------------------------------------------------------------
# Leave 0.0.0.0 for all interfaces

bindIP: 127.0.0.1

Guarde la configuración y salga presionando 'Ctrl+x botón ', escriba 'y ', luego presione 'Entrar '.

4. A continuación, lo más importante es cambiar la propiedad de '/var/wiki ' directorio al usuario y grupo 'wiki ' usando el siguiente comando.

sudo chown -R wiki:wiki /var/wiki

Configuración de Wiki.js como un servicio Systemd

1. Para crear un nuevo archivo de servicio systemd, cambie el directorio de trabajo a '/etc/systemd/system' y cree un nuevo archivo de servicio 'wikijs.service' usando nano.

cd /etc/systemd/system/
sudo nano wikijs.service

Copie y pegue la siguiente configuración.

[Unit]
Description=Wiki.js
After=network.target postgresql-13.service

[Service]
Type=simple
ExecStart=/bin/node server
Restart=always
# Consider creating a dedicated user for Wiki.js here:
User=wiki
Group=wiki
Environment=NODE_ENV=production
WorkingDirectory=/var/wiki

[Install]
WantedBy=multi-user.target

Presiona 'Ctrl+x ', escribe 'y ', luego presione 'Entrar ' para guardar la configuración y salir.

2. Vuelva a cargar el 'systemd-manager ' para aplicar una nueva configuración de servicio.

sudo systemctl daemon-reload

3. A continuación, habilite el servicio 'wikijs ' para que se ejecute al iniciar el sistema con el siguiente comando.

sudo systemctl enable wikijs

4. Inicie el 'wikijs ' servicio y verifique su estado usando el siguiente comando.

sudo systemctl start wikijs
sudo systemctl status wikijs

Ahora verá que wikijs.service está activo y ejecutándose en el sistema Rocky Linux.

Instalar y configurar Nginx como un proxy inverso para Wiki.js

Para esta etapa, instalará y configurará el servidor web Nginx como un proxy inverso para Wiki.js. Si ha instalado el servidor web Nginx en su servidor, vaya a la etapa número 2 para configurar los bloques del servidor Nginx.

1. Para instalar el servidor web Nginx, ejecute el siguiente comando dnf.

sudo dnf install nginx

Escriba 'y ' para confirmar e instalar el servidor web Nginx.

2. Si la instalación está completa, cambie el directorio de trabajo a '/etc/nginx/conf.d' y cree una nueva configuración de bloque de servidor Nginx 'wikijs.conf ' usando nano.

cd /etc/nginx/conf.d/
sudo nano wikijs.conf

Copie y pegue la siguiente configuración y asegúrese de cambiar el valor de 'server_name ' opción con su nombre de dominio.

server {
    listen 80;

    server_name wiki.domain-name.io;

    charset utf-8;
    client_max_body_size 50M;

    location / {
        proxy_set_header Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_pass http://127.0.0.1:3000;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_next_upstream error timeout http_502 http_503 http_504;
    }

}

Presiona 'Ctrl+x ', escribe 'y ', luego presione 'Entrar ' para guardar la configuración y salir.

3. Luego, pruebe la configuración de Nginx y asegúrese de que no haya ningún error, luego habilite el servicio de Nginx.

sudo nginx -t
sudo systemctl enable nginx

4. Ahora inicie y verifique el estado del servicio Nginx ejecutando el siguiente comando.

sudo systemctl start nginx
sudo systemctl enable nginx

Verá que el resultado del servicio Nginx es 'activo (en ejecución) ' como se muestra a continuación.

Asegurar Wikijs con SSL Letsencrypt

Para esta etapa, protegerá la instalación de Wiki.js utilizando SSL Letsencrypt.

1. Ejecute el siguiente comando para instalar el complemento certbot y certbot-nginx.

sudo dnf install certbot python3-certbot-nginx

2. Una vez completada la instalación, genere un nuevo SSL Letsencrtypt para el nombre de dominio radicale usando el comando certbot a continuación.

sudo certbot --nginx --agree-tos --email [email protected] -d wiki.domain-name.io

Y se le harán algunas preguntas a continuación.

  • Una dirección de correo electrónico:cuando caduque el certificado SSL, se le notificará a este correo electrónico.
  • TOS de Letsencrypt (Términos de servicio):escriba 'A' para aceptar.
  • Compartir correo electrónico con EFF:puede elegir 'N' para no.
  • Redirigir automáticamente HTTP a HTTPS:elija el número '2' para habilitar la redirección automática.

Una vez que se complete el proceso, verá que los certificados SSL están disponibles en '/etc/letsencrypt/live/wiki.domain-name.io 'directorio. Y la configuración de bloques de su servidor Nginx ha cambiado con una configuración adicional de letsencrypt.

Configurar el administrador de Wiki.js y la página de inicio predeterminada

Abra su navegador web y escriba la dirección URL de su instalación de Wiki.js en la barra de direcciones.

https://wiki.nombre-de-dominio.io/

1. Será redirigido a la conexión HTTPS y verá la siguiente página.

Escriba los detalles de la cuenta de administrador con su dirección de correo electrónico y contraseña, luego escriba su dominio de Wiki.js como la URL del sitio, luego haga clic en el botón 'INSTALAR'.

Espere a que se instale Wiki.js.

2. Y si la instalación está completa, será redirigido a la página de inicio de sesión de Wiki.js como se muestra a continuación.

Escriba su dirección de correo electrónico y contraseña de administrador, luego haga clic en 'Iniciar sesión botón '.

3. Y se te mostrará el mensaje de bienvenida de Wiki.js.

Haz clic en el botón '+ CREAR PÁGINA DE INICIO ' para crear una nueva página de inicio para tu wiki.

4. Elija el editor que le resulte más cómodo y haga clic en ese editor. Para este ejemplo, usaremos el 'Markdown 'editor.

5. En las 'Propiedades de la página ' emergente, escriba el título de los detalles y una breve descripción de su página de inicio. Y deja la ruta por defecto 'inicio '.

Haga clic en 'Aceptar ' para confirmar la configuración de las propiedades de la página.

6. Escriba el contenido de su página de inicio, luego haga clic en 'CREAR ' para guardar.

7. Ahora será redirigido a su página de inicio de Wiki.js como se muestra a continuación.

Conclusión

¡Felicidades! Ahora ha creado con éxito su wiki con Wiki.js en el servidor Rocky Linux. Wiki.js ahora se ejecuta con la última versión estable de Node.js, la base de datos PostgreSQL y el proxy inverso Nginx. Además, está protegido con SSL Letsencrypt. Para el siguiente paso, puede agregar algunos módulos adicionales según lo necesite, como análisis, autenticación, registro y editores de código/texto. Y ya está listo para escribir documentación sobre sus proyectos.


Rocky Linux
  1. Cómo instalar Python 3.9 en Rocky Linux 8

  2. Cómo instalar Rocky Linux 8.4

  3. Cómo instalar Docker CE en Rocky Linux 8

  4. Cómo instalar Snap en Rocky Linux 8

  5. Cómo instalar Redis en Rocky Linux 8

Cómo instalar PHP 8 en Rocky Linux 8

Cómo instalar Node.js en Rocky Linux 8

Cómo instalar PostgreSQL en Rocky Linux 8

Cómo instalar Rust en Rocky Linux 8

Cómo instalar AngularJS en Rocky Linux 8

Cómo instalar pgAdmin 4 en Rocky Linux 8