今天是老苏居家隔离的第 43 天。
周四除上午,下午各一次抗原外,上午还做了一次核酸;周五上午两个抗原(间隔 4 小时),下午1点还有一次核酸。
现在核酸也不像之前,一栋一栋通知下楼,又开始变得乱糟糟的也没人管,越来越看不懂。
本文是应网友
akimo
的要求写的
都说互联网是有记忆的,可实际上很多时候说没也就没了,再也无处寻觅。但生活中总有些东西是值得被记住的,ArchiveBox
可以帮你做到这一点,它能帮你搭建网站的存档,包括内容、链接、资源等等,让你保留该网站的完整记忆。
什么是 ArchiveBox ?
ArchiveBox
是使用Python
编写的功能强大的自托管Internet
归档解决方案。您向它提供要存档的页面的URL
,然后根据设置和其中的内容将它们以各种格式保存到磁盘。
安装
在群晖上以 Docker 方式安装。
在注册表中搜索 archivebox
,选择第一个 archivebox/archivebox
,版本选择 latest
。
容器名称
一般来说,老苏都是用的默认生成的容器名称,但是因为后面还需要进入到容器内部操作,所以需要一个相对简单又容易辨识的名称
卷
在 docker
文件夹中,创建一个新文件夹,将其命名为 archivebox
文件夹 | 装载路径 | 说明 |
---|---|---|
docker/archivebox | /data | 存放数据 |
端口
本地端口不冲突就行,不确定的话可以用命令查一下
# 查看端口占用
netstat -tunlp | grep 端口号
本地端口 | 容器端口 |
---|---|
4800 | 8000 |
环境
可变 | 值 |
---|---|
MEDIA_MAX_SIZE | 媒体文件的最大尺寸 |
命令行安装
如果你熟悉命令行,可能用 docker cli
更快捷,老苏更喜欢命令行,搭建环境比较快捷
# 新建文件夹 archivebox
mkdir -p /volume2/docker/archivebox
# 进入 archivebox 目录
cd /volume2/docker/archivebox
# 运行容器
docker run -d \
--restart unless-stopped \
--name archivebox \
-p 4800:8000 \
-v $(pwd):/data \
-e MEDIA_MAX_SIZE=750m \
archivebox/archivebox:latest
也可以用 docker-compose
安装,将下面的内容保存为 docker-compose.yml
文件
version: '2.4'
services:
archivebox:
image: archivebox/archivebox:latest
container_name: archivebox
command: server --quick-init 0.0.0.0:8000
ports:
- 4800:8000
environment:
- ALLOWED_HOSTS=*
- MEDIA_MAX_SIZE=750m
volumes:
- /volume2/docker/archivebox:/data
然后执行下面的命令,在 portainer
中执行也是可以的
# 进入 archivebox 目录
cd /volume2/docker/archivebox
# 将 docker-compose.yml 放入当前目录
# 一键启动
docker-compose up -d
运行
软件有个初始化过程,需要稍作等待,或者你直接观察 终端机
或者 日志
当看到 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
# 进入容器(前一个 archivebox 是用户名,后一个 archivebox 是容器名)
docker exec -it --user archivebox archivebox /bin/bash
# 创建管理员
archivebox manage createsuperuser
- 输入用户名,如果留空,会默认使用
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/ArchiveBox
Docker · ArchiveBox/ArchiveBox Wiki
地址:https://github.com/ArchiveBox/ArchiveBox/wiki/Docker