与 Gemini 对话
群晖使用docker-compose搭建https://github.com/ArchiveBox/ArchiveBox
好的,下面是在群晖上使用 Docker Compose 搭建 ArchiveBox 的详细步骤,考虑到您可能对群晖 Docker 的使用不太熟悉,我会尽量详细说明:
准备工作
- 启用 SSH (可选但推荐): 启用 SSH 可以方便您通过终端进行操作,更加灵活。在群晖的“控制面板” -> “终端机和 SNMP”中启用 SSH 服务。
- 安装 Docker 套件: 在群晖的“套件中心”搜索并安装“Docker”套件。
- 创建共享文件夹 (可选但推荐): 为了持久化存储 ArchiveBox 的数据,建议创建一个共享文件夹,例如名为
docker。然后在docker文件夹下再创建一个archivebox文件夹,用于存放 ArchiveBox 的配置文件和数据。这样即使 Docker 容器被删除或更新,您的数据也不会丢失。这个步骤是为了将 Docker 容器内的数据映射到群晖的文件系统中,保证数据安全。 - 使用 SSH 连接到群晖 (如果启用了 SSH): 打开终端(Windows 下可以使用 PowerShell 或 Git Bash,macOS/Linux 自带终端),使用以下命令连接到群晖:
Bash
ssh 用户名@群晖IP地址
例如:
Bash
输入您的群晖密码进行登录。
搭建步骤
- 创建
docker-compose.yml文件: 在群晖的docker/archivebox文件夹中创建一个名为docker-compose.yml的文件。您可以使用群晖的 File Station 创建文件,也可以通过 SSH 使用vi或nano等编辑器创建。
在 docker-compose.yml 文件中粘贴以下内容:
YAML
version: "3.9"
services:
archivebox:
image: archivebox/archivebox:latest
container_name: archivebox
restart: unless-stopped
ports:
- "8000:8000" # 将群晖的 8000 端口映射到容器的 8000 端口
volumes:
- ./data:/data # 将当前目录下的 data 文件夹映射到容器的 /data 目录
environment:
- SECRET_KEY=your_secret_key # 替换成你自己的密钥,例如使用 `openssl rand -hex 32` 生成
- ALLOWED_HOSTS=* # 允许所有主机访问,生产环境不推荐,建议设置为您的域名或 IP 地址
- MEDIA_MAX_SIZE=5G # 可选:设置允许的最大媒体文件大小,根据需要调整
- OUTPUT_DIR=/data # 将数据输出到映射的卷
command: "server"
重要说明:
SECRET_KEY: 这是一个非常重要的密钥,用于保护您的 ArchiveBox 实例。请务必将其替换成一个随机生成的字符串。您可以使用openssl rand -hex 32命令在终端生成一个随机密钥。ALLOWED_HOSTS: 在生产环境中,为了安全起见,请将*替换成您的域名或 IP 地址。例如,如果您的群晖 IP 地址是192.168.1.100,则可以设置为192.168.1.100。volumes:./data:/data将当前目录下的data文件夹映射到容器的/data目录。这意味着 ArchiveBox 的所有数据都将保存在您群晖的docker/archivebox/data文件夹中。请确保docker/archivebox文件夹存在。- **端口映射:**
- "8000:8000"表示将群晖的 8000 端口映射到 Docker 容器的 8000 端口。您可以根据需要修改群晖的端口,但要确保没有其他服务占用该端口。
- 使用 Docker Compose 启动 ArchiveBox: 通过 SSH 进入到
docker/archivebox文件夹,然后执行以下命令启动 ArchiveBox:
Bash
docker-compose up -d
-d 参数表示在后台运行。
- 访问 ArchiveBox: 在浏览器中输入
http://群晖IP地址:8000即可访问 ArchiveBox。
常用命令
- 停止 ArchiveBox:
Bash
docker-compose down
- 重启 ArchiveBox:
Bash
docker-compose restart
- 查看日志:
Bash
docker-compose logs -f
- 更新 ArchiveBox:
Bash
docker-compose pull
docker-compose up -d
其他注意事项
- 反向代理 (可选但推荐): 如果您想通过域名访问 ArchiveBox,并使用 HTTPS 加密连接,建议在群晖上配置反向代理。您可以使用群晖自带的“应用程序门户”或安装 Nginx Proxy Manager 等套件来实现反向代理。
- 资源限制: 如果您的群晖资源有限,可以根据需要调整
docker-compose.yml文件中的资源限制,例如使用resources配置项限制 CPU 和内存使用量。
希望以上步骤能够帮助您成功在群晖上搭建 ArchiveBox。如果您在搭建过程中遇到任何问题,请随时提出。
Gemini 的回答未必正确无误,请仔细核查