Bolsa de mano es una aplicación autohospedable gratuita para guardar páginas web. Es una alternativa de código abierto a Pocket , lo que le permite administrar una lista de artículos con los que se topó en Internet para leerlos más tarde. Este tutorial le mostrará cómo instalar Wallabag en Arch Linux VPS con pila LEMP (Nginx, MariaDB, PHP).
Se supone que ha instalado Arch Linux en un VPS y una pila LEMP está instalada en su Arch VPS. Consulte los siguientes dos tutoriales si aún no lo ha hecho.
- Cómo instalar Arch Linux manualmente en un VPS KVM a través de VNC
- Cómo instalar la pila LEMP en Arch Linux
Ahora proceda a la instalación.
Paso 1:crear una base de datos y un usuario para Wallabag
Primero, acceda a su Arch Linux VPS.
Wallabag necesita una base de datos para almacenar sus páginas web y vamos a utilizar la base de datos MariaDB en este tutorial. Ejecute el siguiente comando para iniciar sesión en el shell de MariaDB como root.
mysql -u root -p
Luego cree una nueva base de datos para Wallabag usando el siguiente comando. Este tutorial lo llama wallabag
, puede usar el nombre que desee para la base de datos.
create database wallabag;
Luego, cree un nuevo usuario de base de datos en localhost usando el siguiente comando. Nuevamente, este tutorial lo llama wallabaguser
, puedes usar el nombre que quieras.
create user [email protected];
Establecer una contraseña para el usuario. Reemplace your-password con su contraseña preferida.
set password for [email protected]= password("your-password");
Luego otorgue todos los permisos de la nueva base de datos al nuevo usuario para que luego Wallabag pueda escribir en la base de datos.
grant all privileges on wallabag.* to [email protected] identified by 'your-password';
Vacíe la tabla de privilegios para que los cambios surtan efecto.
flush privileges;
Salir de MariaDB Shell:
exit;
Sus páginas web se almacenarán en wallabag_entry
table después de terminar de instalar wallabag al final de este tutorial.
Paso 2:Instalar Wallabag en Arch Linux
Usaremos la herramienta git para clonar el repositorio de Wallabag desde Github y luego instalaremos Wallabag con Composer, que es un administrador de dependencias para PHP. Así que instala git en Arch Linux con el siguiente comando:
sudo pacman -S git
Luego, clone el repositorio de Wallabag y cambie su directorio de trabajo al repositorio.
git clone https://github.com/wallabag/wallabag.git cd wallabag
La última versión de Wallabag (2.1.2) se lanzó el 17 de octubre de 2016. Cambie a la versión 2.1.2 con git checkout
comando.
git checkout 2.1.2
Antes de instalar Wallabag con Composer, debemos editar el php.ini
archivo para habilitar algunas extensiones de PHP.
sudo nano /etc/php/php.ini
Busque las siguientes líneas y elimine los puntos y comas para habilitar estas extensiones.
;extension=bcmath.so ;extension=curl.so ;extension=gd.so ;extension=iconv.so ;extension=mysqli.so ;extension=pdo_mysql.so ;extension=zip.so
Guarde y cierre el archivo. Luego, vuelva a cargar el servicio php-fpm para que los cambios surtan efecto.
sudo systemctl reload php-fpm
A continuación, instale el compositor.
sudo pacman -S composer
Ahora configura la variable Symfony e instala Wallabag usando el siguiente comando. SYMFONY_ENV=prod
le dice a Symfony que estamos instalando Wallabag en un entorno de producción. El --no-dev
flag asegura que no se instalen paquetes de desarrollo en el entorno de producción.
SYMFONY_ENV=prod composer install --no-dev -o --prefer-dist
Durante el proceso de instalación, Composer descargará e instalará todas las dependencias necesarias.
Después de eso, se le pedirá que proporcione los parámetros faltantes para que app/config/parameters.yml
se puede crear un archivo. Composer ya proporciona algunos valores predeterminados, pero no se pueden usar para un servicio Wallabag de producción.
Para simplificar, dividamos las preguntas en dos partes. La primera parte trata sobre los parámetros de la base de datos. Estas son las preguntas y los parámetros que proporciona este tutorial.
Creating the "app/config/parameters.yml" file Some parameters are missing. Please provide them. database_driver (pdo_sqlite): pdo_mysql database_host (127.0.0.1): 127.0.0.1 database_port (null): 3306 database_name (symfony): wallabag database_user (root): wallabaguser database_password (null): your-password database_path ('%kernel.root_dir%/../data/db/wallabag.sqlite'): /var/lib/mysql/wallabag database_table_prefix (wallabag_): wallabag_ database_socket(null): Press Enter
Esta primera pregunta es qué controlador de base de datos, es decir, qué base de datos desea usar para Wallabag. El controlador predeterminado es pdo_sqlite
lo que significa que la base de datos SQLite se utilizará para almacenar páginas web. Este artículo utilizará MariaDB/MySQL porque son rápidos y son el sistema de administración de bases de datos relacionales de código abierto más popular. Ya hemos habilitado el pdo_mysql
controlador al principio de este artículo. Así que ingresa pdo_mysql
como respuesta a la primera pregunta.
Las otras preguntas son fáciles de responder. Introduce 127.0.0.1
como host de la base de datos y 3306
como el puerto de la base de datos porque, de forma predeterminada, la base de datos MariaDB escuchará en 127.0.0.1:3306. Luego ingrese el nombre de la base de datos, el usuario de la base de datos y la contraseña del usuario de la base de datos que creó en el paso 1. La ruta de la base de datos predeterminada de MariaDB/MySQL es /var/lib/mysql
. Todas sus bases de datos y tablas se almacenan en este directorio. El prefijo de la tabla de la base de datos le ayuda a reconocer que estas tablas son para Wallabag.
Ahora, en la segunda parte, puede presionar Enter para usar los valores predeterminados.
mailer_transport (smtp): mailer_host (127.0.0.1): mailer_user (null): mailer_password (null): locale (en): secret (ovmpmAWXRCabNlMgzlzFXDYmCFfzGv): twofactor_auth (true): twofactor_sender ([email protected]): fosuser_confirmation (true): from_email ([email protected]):
Una vez hecho esto, ejecute el siguiente comando.
php bin/console wallabag:install --env=prod
Comprobará los requisitos del sistema y configurará la base de datos. Cuando le pregunte si desea restablecer la base de datos, presione n para responder no Luego se le pedirá que cree un usuario administrador.
Installing Wallabag... Step 1 of 5. Checking system requirements. +-----------------+--------+----------------+ | Checked | Status | Recommendation | +-----------------+--------+----------------+ | PDO Driver | OK! | | | curl_exec | OK! | | | curl_multi_init | OK! | | +-----------------+--------+----------------+ Success! Your system can run Wallabag properly. Step 2 of 5. Setting up database. It appears that your database already exists. Would you like to reset it? (y/N)n Creating schema Clearing the cache Step 3 of 5. Administration setup. Would you like to create a new admin user (recommended) ? (Y/n)y Username (default: wallabag) : your-admin-username Password (default: wallabag) : admin-pasword-here Email: admin-email-here Step 4 of 5. Config setup. Step 5 of 5. Installing assets. Wallabag has been successfully installed. Just execute `php bin/console server:run --env=prod` for using wallabag: http://localhost:8000
El paso 2 creará tablas de base de datos wallabag. Una vez hecho esto, movemos el directorio wallabag a la raíz del documento Nginx.
cd ~ sudo mv ~/wallabag/ /usr/share/nginx/
A continuación, establezca el usuario de Nginx (http) como propietario.
sudo chown http:http /usr/share/nginx/wallabag -R
Paso 3:Configuración del archivo de bloque del servidor Nginx
Cree el archivo.
sudo nano /etc/nginx/conf.d/wallabag.conf
Copie y pegue el siguiente texto en el archivo de configuración. Reemplace wallabag.example.com
con su propio nombre de dominio. También debe apuntar su nombre de dominio a la dirección IP de su Arch Linux VPS en DNS.
server { server_name wallabag.example.com; root /usr/share/nginx/wallabag/web; location / { # try to serve file directly, fallback to app.php try_files $uri /app.php$is_args$args; } location ~ ^/app\.php(/|$) { fastcgi_pass unix:/run/php/php7.0-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; } error_log /var/log/nginx/wallabag_error.log; access_log /var/log/nginx/wallabag_access.log; }
Guarde y cierre el archivo. Luego, vuelva a cargar Nginx para que se pueda habilitar el bloqueo del servidor.
sudo systemctl reload nginx
Ahora debería poder acceder a la interfaz web de wallabag en wallabag.example.com
e inicie sesión.
Página de inicio rápido de Wallabag
Configuración de un servidor SMTP básico
Tenga en cuenta que para registrar nuevos usuarios, su Arch Linux VPS debe tener un servidor SMTP en ejecución para enviar correos electrónicos de confirmación a los nuevos usuarios. Puede usar Postfix para este propósito.
sudo pacman -S postfix
Luego inicie y habilite el servicio postfix.
sudo systemctl start postfix sudo systemctl enable postfix
¡Eso es!
Espero que este tutorial te haya ayudado a instalar Wallabag en Arch Linux VPS con LEMP stack. Como siempre, si encuentra útil esta publicación, suscríbase a nuestro boletín informativo gratuito o síganos en Google+, Twitter o me gusta en nuestra página de Facebook.