Способы оплаты Abuse

Как разместить Wikipedia и Arch Wiki на Raspberry Pi с помощью Kiwix

04.12.2024, 17:22

Готовитесь ли вы к концу света или просто хотите, чтобы вся информация была у вас под рукой, даже когда подводит интернет — Kiwix поможет вам быстро и легко сохранить копию интересующего Вики-проекта в оффлайне. 

Что такое Kiwix?

Kiwix — платформа, создающая сжатые версии сайтов в виде отдельных файлов с расширением .zim. Они мало весят, поэтому их можно хранить даже на смартфоне, компьютере или на сервере. 

Что нужно для работы с Kiwix

  • Raspberry Pi — подойдут даже не самые новые модели. 
  • Накопитель — примерно 90 гигабайт свободного пространства. Первое время можно использовать карты памяти, однако в дальнейшем мы рекомендуем подключить к «малине» SSD — он будет быстрее и надежнее.
  • Подключение к интернету. 

Установка Kiwix в контейнер Docker

Шаг 1: Скачайте файл ZIM для Kiwix

Перейдите в библиотеку Kiwix, найдите версию Wikipedia или любой другой файл, который соответствует вашим нуждам, и скачайте его перед тем, как перейти к следующему шагу.

Нажмите на "Download - 38.29MB", и появится окно с вариантами для скачивания.

Шаг 2: Запустите контейнер Docker

Метод 1. Docker run

Эта команда позволяет запустить контейнер Kiwix без особых проблем:

docker run -v /home/user/kiwix:/data -p 8080:8080 ghcr.io/kiwix/kiwix-serve '*.zim'

А теперь давайте разберем эту команду:

  • docker run: Основная команда для запуска нового контейнера Docker.
  • -v /home/user/kiwix:/dаta: Эта опция маппит папку на хост-машине (/home/user/kiwix) на папку внутри контейнера (/data).
  • -p 8080:8080: Это маппит порт 8080 контейнера. То есть, вы можете получить доступ к сервису Kiwix, зайдя на http://localhost:8080 в вашем веб-браузере.
  • kiwix/kiwix-serve: Указывает Docker-образ для использования.
  • *.zim: Эта часть говорит серверу Kiwix обслуживать все файлы с расширением .zim из папки /data

Метод 2. Docker Compose
Альтернативный вариант — использовать docker compose. 

Создайте файл YAML с именем docker-compose.yml и добавьте в него следующие данные:

version: '3'
services:
  kiwix-serve:
    image: ghcr.io/kiwix/kiwix-serve
    volumes:
      - /home/user/kiwix:/data
    ports:
      - '8080:8080'
    command: '*.zim'

Разберем файл docker-compose.yml:

  • version: '3': Указывает версию Docker Compose.
  • services:: Указывает сервисы для запуска, в данном случае сервер Kiwix.
  • image: ghcr.io/kiwix/kiwix-serve:3.7.0: Использует образ сервера Kiwix.
  • volumes:: Маппит папку хоста (/home/user/kiwix) на папку контейнера /data, предоставляя доступ к файлам ZIM.
  • ports:: Маппит порт 80 внутри контейнера на порт 8080 хоста для доступа через веб.
  • command:: Говорит серверу Kiwix обслуживать все файлы ZIM с расширением .zim из папки /data.

Далее выполните команду:

docker-compose up -d


Так вы запустите сервер Kiwix в режиме демона на порту 8080.

После этого вы сможете пользоваться вашей локальной Википедией. Для это потребуется только перейти в браузере по вашему локальному IP. 

Если вы хотите надежную оффлайн-базу знаний, Kiwix — отличное место для старта. Особенно, когда под рукой у вас есть только недорогой одноплатный компьютер и полчаса свободного времени.