💾 Archived View for byzoni.org › gemlog › 2021-12-09-miniflux.gmi captured on 2023-06-14 at 14:01:57. Gemini links have been rewritten to link to archived content
⬅️ Previous capture (2022-01-08)
-=-=-=-=-=-=-
2021-12-09
Miniflux является минималистский веб RSS-ридер с открытым исходным кодом, оптимизированным для удобства чтения. Это быстрый, простой, эффективный и он работает с помощью смартфона, планшетного ПК или на рабочем столе.
Прежде всего, давайте начнем с обновления пакетов:
$ sudo apt-get update && sudo apt-get -y upgrade
Miniflux требует postresql в качестве сервера базы данных. Поэтому давайте установим необходимые пакеты:
$ sudo apt install postgresql postgresql-contrib
Загрузятся драйверы PostgreSQL последней версии и развернутся необходимые компоненты.
Запускаем сервис:
$ sudo systemctl start postgresql.service
Проверка статуса сервиса:
$ sudo systemctl status postgresql.service
Сервис развернули.
Нам нужно создать базу данных для Miniflux для работы.
$ sudo -u postgres psql -c "CREATE USER miniflux WITH PASSWORD 'miniflux';" $ sudo -u postgres psql -c "CREATE DATABASE miniflux_db OWNER miniflux;" $ sudo -u postgres psql -c "GRANT ALL PRIVILEGES ON DATABASE miniflux_db TO miniflux;" $ sudo -u postgres psql miniflux_db -c 'CREATE EXTENSION hstore;'
$ sudo wget -O /usr/local/bin/miniflux https://github.com/miniflux/v2/releases/download/2.0.34/miniflux-linux-amd64
Сделайте файл miniflux исполняемый
$ sudo chmod +x /usr/local/bin/miniflux $ sudo chmod 755 /usr/local/bin/miniflux $ sudo setcap cap_net_bind_service=+ep /usr/local/bin/miniflux
Убедитесь, что возможность добавлена:
$ getcap /usr/local/bin/miniflux /usr/local/bin/miniflux = cap_net_bind_service+ep
Обратите внимание, что вам придется сделать эту операцию каждый раз, когда вы обновляете Miniflux.
$ sudo useradd -s /usr/sbin/nologin -r -M miniflux
Наконец, нам нужно настроить miniflux. Файл конфигурации хранится в `/etc/miniflux.conf`:
$ sudo nano /etc/miniflux.conf
И добавьте следующее содержимое.
# /etc/miniflux.conf LOG_DATE_TIME=yes LISTEN_ADDR=127.0.0.1:8080 DATABASE_URL=user=miniflux password=miniflux dbname=miniflux_db sslmode=disable host=localhost port=MyPostgreSQLPort # Run SQL migrations automatically: # RUN_MIGRATIONS=1
Затем
$ sudo chown miniflux:miniflux /etc/miniflux.conf $ sudo chmod 600 /etc/miniflux.conf
Чтобы завершить установку, запустите миграции SQL и создайте администратора пользователя:
$ sudo miniflux -c /etc/miniflux.conf -migrate $ sudo miniflux -c /etc/miniflux.conf -create-admin
Используйте nano, чтобы создать новый файл сервиса.
$ sudo nano /etc/systemd/system/miniflux.service
И добавьте следующее содержимое в miniflux.service.
[Unit] Description=Miniflux Service Requires=miniflux After=network.target After=postgresql.service [Service] Type=simple StartLimitBurst=0 ExecStart=/usr/local/bin/miniflux EnvironmentFile=/etc/miniflux.conf User=miniflux Restart=always NonBlocking=true [Install] WantedBy=multi-user.target
Запустите сервис.
$ sudo systemctl enable miniflux.service $ sudo systemctl start miniflux.service $ sudo systemctl status miniflux.service
$ sudo apt-get -y install nginx
Создайте обратный конфигурацию прокси-сервера для Miniflux.
$ sudo nano /etc/nginx/sites-available/miniflux.conf
Заполните файл следующей конфигурацией.
server { server_name my.domain.tld; listen 80; location / { proxy_pass http://127.0.0.1:8080; proxy_redirect off; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } }
Включите конфигурацию обратной прокси-сервера Miniflux Nginx.
$ sudo ln -s /etc/nginx/sites-available/miniflux.conf /etc/nginx/sites-enabled/miniflux.conf
Проверка конфигурации и перезагрузите службу Nginx.
$ sudo nginx -t $ sudo systemctl restart nginx.service
Собственно на этом все. Остается только у своего доменного регистратора прописать на используемый my.domain.tld требуемый ip-адрес, дождаться его делегирования, и можно открывать уже свой ридер в браузере.
Для первого входа в систему используется учетные данные и можете импортировать свой opml-файл с rss-подписками.
В целом, miniflux мне очень понравился тем, что он очень легкий, быстрый, имеет управление с клавиатуры. Плюс в нем очень просто настраивать оформление статей.