mirror of
https://github.com/wallabag/wallabag.git
synced 2024-11-18 07:08:28 +00:00
1.9 KiB
1.9 KiB
Install RabbitMQ for asynchronous tasks
In order to launch asynchronous tasks (useful for huge imports for example), we can use RabbitMQ.
Requirements
You need to have RabbitMQ installed on your server.
Installation
wget https://www.rabbitmq.com/rabbitmq-signing-key-public.asc
apt-key add rabbitmq-signing-key-public.asc
apt-get update
apt-get install rabbitmq-server
Configuration and launch
rabbitmq-plugins enable rabbitmq_management # (useful to have a web interface, available at http://localhost:15672/ (guest/guest)
rabbitmq-server -detached
Stop RabbitMQ
rabbitmqctl stop
Configure RabbitMQ in wallabag
Edit your parameters.yml
file to edit RabbitMQ configuration. The default one should be ok:
rabbitmq_host: localhost
rabbitmq_port: 5672
rabbitmq_user: guest
rabbitmq_password: guest
Enable RabbitMQ in wallabag
In internal settings, in the Import section, enable RabbitMQ (with the value 1).
Launch RabbitMQ consumer
Depending on which service you want to import from you need to enable one (or many if you want to support many) cron job:
# for Pocket import
bin/console rabbitmq:consumer -e=prod import_pocket -w
# for Readability import
bin/console rabbitmq:consumer -e=prod import_readability -w
# for Instapaper import
bin/console rabbitmq:consumer -e=prod import_instapaper -w
# for wallabag v1 import
bin/console rabbitmq:consumer -e=prod import_wallabag_v1 -w
# for wallabag v2 import
bin/console rabbitmq:consumer -e=prod import_wallabag_v2 -w
# for Firefox import
bin/console rabbitmq:consumer -e=prod import_firefox -w
# for Chrome import
bin/console rabbitmq:consumer -e=prod import_chrome -w