网站存档服务ArchiveBox
今天是老苏居家隔离的第 43 天。
周四除上午,下午各一次抗原外,上午还做了一次核酸;周五上午两个抗原(间隔 4 小时),下午1点还有一次核酸。
现在核酸也不像之前,一栋一栋通知下楼,又开始变得乱糟糟的也没人管,越来越看不懂。
刚刚说物流好一点,又在没有任何文件的情况下突然封控了,小区可是连续 17 天全阴的,什么时候才是个头呢?
本文是应网友
akimo
的要求写的
都说互联网是有记忆的,可实际上很多时候说没也就没了,再也无处寻觅。但生活中总有些东西是值得被记住的,ArchiveBox
可以帮你做到这一点,它能帮你搭建网站的存档,包括内容、链接、资源等等,让你保留该网站的完整记忆。
什么是 ArchiveBox ?
ArchiveBox
是使用Python
编写的功能强大的自托管Internet
归档解决方案。您向它提供要存档的页面的URL
,然后根据设置和其中的内容将它们以各种格式保存到磁盘。
安装
在群晖上以 Docker 方式安装。
在注册表中搜索 archivebox
,选择第一个 archivebox/archivebox
,版本选择 latest
。
容器名称
一般来说,老苏都是用的默认生成的容器名称,但是因为后面还需要进入到容器内部操作,所以需要一个相对简单又容易辨识的名称
卷
在 docker
文件夹中,创建一个新文件夹,将其命名为 archivebox
文件夹 | 装载路径 | 说明 |
---|---|---|
docker/archivebox |
/data |
存放数据 |
端口
本地端口不冲突就行,不确定的话可以用命令查一下
1 | # 查看端口占用 |
本地端口 | 容器端口 |
---|---|
4800 |
8000 |
环境
可变 | 值 |
---|---|
MEDIA_MAX_SIZE |
媒体文件的最大尺寸 |
命令行安装
如果你熟悉命令行,可能用 docker cli
更快捷,老苏更喜欢命令行,搭建环境比较快捷
1 | # 新建文件夹 archivebox |
也可以用 docker-compose
安装,将下面的内容保存为 docker-compose.yml
文件
1 | version: '2.4' |
然后执行下面的命令,在 portainer
中执行也是可以的
1 | # 进入 archivebox 目录 |
运行
软件有个初始化过程,需要稍作等待,或者你直接观察 终端机
或者 日志
当看到 Starting development server at http://0.0.0.0:8000/
,就可以在浏览器中输入 http://群晖IP:4800
,加载成功就能看到主界面
创建管理员
通过命令行进入容器内,执行创建管理员用户的操作
【注意】:不能用
root
用户,老苏用了容器内置的账号archivebox
,原因官方有说明,有兴趣的自己去看:https://github.com/ArchiveBox/ArchiveBox/wiki/Security-Overview#do-not-run-as-root
1 | # 进入容器(前一个 archivebox 是用户名,后一个 archivebox 是容器名) |
- 输入用户名,如果留空,会默认使用
archivebox
做用户名 - 输入邮箱地址
- 输入密码
老苏只是测试,所以用了非常简单的密码,因此导致了一堆的警告,但是最后老苏用
y
直接跳过,反正进入系统后可以改密码的
抓取网站
以老苏的博客为例
URLs
:这里输入老苏博客的地址,https://laosu.ml
-
URLs format
:选择了URL List
-
tags
:老苏留了空 -
Archive depth
:老苏选了depth = 1
-
Archive methods
:还是留了空,如果你想快一点,可以只选择一项,比如singlefile
点 Add URLs and archive +
就开始干活了
注意看 /docker/archivebox/archive
目录,慢慢的会有目录和文件
资源占用会变高
有时候整个机器是这样的
PUBLIC
SNAPSHORT
如果中途因为种种原因中断了,可以勾选未完成的链接,直接点 pull
继续
参考文档
ArchiveBox/ArchiveBox: 🗃 Open source self-hosted web archiving. Takes URLs/browser history/bookmarks/Pocket/Pinboard/etc., saves HTML, JS, PDFs, media, and more…
地址:https://github.com/ArchiveBox/ArchiveBoxDocker · ArchiveBox/ArchiveBox Wiki
地址:https://github.com/ArchiveBox/ArchiveBox/wiki/Docker