离线维基百科阅读器Kiwix Serve

在这里插入图片描述

本文软件是网友 刘源 推荐的,因为他已经安装成功了,所以老苏拖拖拉拉的就从去年拖到了现在; 😂

什么是 Kiwix ?

Kiwix 是一个用于浏览离线内容的自由开源浏览器,最初用于离线浏览维基百科Kiwix 可以读取以压缩形式存储在 ZIM 格式文件中的内容,使用户能够在没有网络连接的情况下浏览维基百科及其他支持的内容。目前,Kiwix 软件存在 macOSWindowsLinux等多种版本。

什么是 Kiwix-serve ?

Kiwix Serve 是一个 Zim 文件兼容的网络服务器。它允许您在本地网络中通过 HTTP 协议传送 .zim 文件。

什么是 Zim ?

Zim 是构建于 Web Recorder 项目愿景之上的网页存档格式,可将网站的全部内容整合并压缩为便于离线分享和存储的单一文件中。

所以你可以使用 Zim格式,将部分教育类资源站点保存下来,供没有网络或者网络不畅的社区或个人使用,实现知识的共享。

准备

需要说明的是,Kiwix Serve 支持通过环境变量设置远程下载,考虑到不同的网络环境,老苏还是建议先下载到本地

需要先准备好 zim 文件,如果容器在启动时找不到文件,会导致容器启动失败

为了演示,老苏在这里 https://download.kiwix.org/zim/wikipedia/?C=S;O=D 下载了一个最小的 wikipedia_zh_chemistry_mini_2022-12.zim,大约 18M

在这里插入图片描述

看名字是中文的化学,具体内容只有安装完成才知道

安装

群晖上以 Docker 方式安装。

在注册表中搜索 kiwix-serve ,选择第一个 kiwix/kiwix-serve,版本选择 latest

本文写作时, latest 版本对应为 3.4.0

在这里插入图片描述

docker 文件夹中,创建一个新文件夹 kiwixserve,并在其中建一个个子文件夹 data,并将下载好的 .zim 文件放入 data 目录

在这里插入图片描述

文件夹装载路径说明
docker/kiwixserve/data/data存放 zim 文件

在这里插入图片描述

端口

本地端口不冲突就行,不确定的话可以用命令查一下

# 查看端口占用
netstat -tunlp | grep 端口号
  • 1
  • 2
本地端口容器端口
50588080

默认是这样的

在这里插入图片描述

老苏删掉了 80 端口

在这里插入图片描述

环境

可变
DOWNLOAD远程 zim 文件地址

例如:-e DOWNLOAD=https://download.kiwix.org/zim/wikipedia/wikipedia_zh_chemistry_mini_2022-11.zim,设置了的话,会自己下载

在这里插入图片描述

老苏没有用到环境变量,但是命令行需要输入 *.zim,这很重要,是告诉容器搜索数据目录中的所有 ZIM 文件

命令行只有第一次生效,如果忘了只能删了重新来过;

在这里插入图片描述

命令行安装

如果你熟悉命令行,可能用 docker cli 更快捷

# 新建文件夹 kiwixserve 和 子目录
mkdir -p /volume2/docker/kiwixserve/data

# 在 data 中拷入 zim 文件
# 【注意】:如果没有 zim 文件会导致容器无法启动

# 进入 kiwixserve 目录
cd /volume2/docker/kiwixserve

# 运行容器
docker run -d \
   --restart unless-stopped \
   --name kiwixserve \
   -p 5058:8080 \
   -v $(pwd)/data:/data \
   kiwix/kiwix-serve \
   *.zim

# 运行容器(带自动下载的示例)
docker run -d \
   --restart unless-stopped \
   --name kiwixserve \
   -p 5058:8080 \
   -v $(pwd)/data:/data \
   -e DOWNLOAD=https://download.kiwix.org/zim/wikipedia/wikipedia_zh_chemistry_mini_2022-11.zim
   kiwix/kiwix-serve \
   *.zim
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27

也可以用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件

version: '3'

services:
  kiwixserve:
    image: kiwix/kiwix-serve
    container_name: kiwixserve
    restart: unless-stopped
    ports:
      - 5058:8080
    volumes:
      - ./data:/data
    command: '*.zim'
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

然后执行下面的命令

# 新建文件夹 kiwixserve 和 子目录
mkdir -p /volume2/docker/kiwixserve/data

# 在 data 中拷入 zim 文件
# 【注意】:如果没有 zim 文件会导致容器无法启动

# 进入 kiwixserve 目录
cd /volume2/docker/kiwixserve

# 将 docker-compose.yml 放入当前目录

# 一键启动
docker-compose up -d
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

运行

在浏览器中输入 http://群晖IP:5058 就能看到主界面

在这里插入图片描述

点开 化学维基百科

在这里插入图片描述

随便打开一个

在这里插入图片描述

也可以搜索,比如搜 二氧化碳

在这里插入图片描述

是不是发现和我们之前搭建的 Flask-MDict 异曲同工?

文章传送门:Flask-MDict搭建在线Mdict词典服务

参考文档

Index of /zim/wikipedia
地址:https://download.kiwix.org/zim/wikipedia/?C=S;O=D

Index of /zim
地址:https://download.kiwix.org/zim/

kiwix/kiwix-tools: Command line Kiwix tools: kiwix-serve, kiwix-manage, …
地址:https://github.com/kiwix/kiwix-tools

Kiwix-serve - Kiwix
地址:https://wiki.kiwix.org/wiki/Kiwix-serve

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

杨浦老苏

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

举报

选择你想要举报的内容(必选)
  • 内容涉黄
  • 政治相关
  • 内容抄袭
  • 涉嫌广告
  • 内容侵权
  • 侮辱谩骂
  • 样式问题
  • 其他
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回顶部