Docker实战 | 使用Docker部署Readeck书签管理工具

【Docker项目实战】使用Docker部署Readeck书签管理工具

  • 一、Readeck介绍
    • [1.1 Readeck简介](#1.1 Readeck简介)
    • [1.2 Readeck主要特点](#1.2 Readeck主要特点)
  • 二、本次实践规划
    • [2.1 本地环境规划](#2.1 本地环境规划)
    • [2.2 本次实践介绍](#2.2 本次实践介绍)
  • 三、本地环境检查
    • [3.1 检查Docker服务状态](#3.1 检查Docker服务状态)
    • [3.2 检查Docker版本](#3.2 检查Docker版本)
    • [3.3 检查docker compose 版本](#3.3 检查docker compose 版本)
  • 四、拉取Readeck镜像
  • 五、部署Readeck服务
    • [5.1 创建部署目录](#5.1 创建部署目录)
    • [5.2 编辑部署文件](#5.2 编辑部署文件)
    • [5.3 创建Readeck容器](#5.3 创建Readeck容器)
    • [5.4 查看Readeck容器状态](#5.4 查看Readeck容器状态)
    • [5.5 检查Readeck容器日志](#5.5 检查Readeck容器日志)
  • 六、访问Readeck服务
    • [6.1 访问Readeck初始页](#6.1 访问Readeck初始页)
    • [6.2 注册账号](#6.2 注册账号)
    • [6.3 添加书签](#6.3 添加书签)
  • 七、总结

一、Readeck介绍

1.1 Readeck简介

Readeck 是一款简洁高效的 Web 应用程序,旨在帮助用户保存网页中真正有价值的可读内容,超越传统书签,打造个人专属的"数字剪报"。它不仅是一个书签管理器,更是一个强大的"稍后阅读"工具,让您能永久珍藏喜爱的文章、教程或资讯,无论原始网页是否依然存在。

1.2 Readeck主要特点

  • 一键保存网页精华:只需点击一下,即可抓取并存储网页的核心可读内容。
  • 永久保存珍贵内容:即使原网页失效或被删除,您保存的内容依然可随时查阅。
  • 纯净无干扰的阅读体验:自动去除广告、侧边栏等干扰元素,呈现清晰整洁的文章排版。
  • 智能内容提取:精准识别文章主体,保留文字、图片和关键格式,确保信息完整。
  • 便捷的分类与管理:支持标签和文件夹功能,轻松组织和查找您收藏的各类文章。
  • 跨设备同步访问:登录您的账户,即可在任何设备上无缝访问您的内容库。
  • 离线阅读支持:保存的内容可离线查看,让您随时随地获取所需信息。

二、本次实践规划

2.1 本地环境规划

本次实践为个人测试环境,操作系统版本为 Ubuntu 24.04.2 LTS。

hostname IP地址 操作系统版本 Docker版本 部署项目 备注
jeven 192.168.3.88 Ubuntu 24.04.2 LTS 28.3.3 Readeck ------

2.2 本次实践介绍

1.本次实践部署环境为个人测试环境,生产环境请谨慎;

2.在Docker环境下部署Readeck书签管理工具。

三、本地环境检查

3.1 检查Docker服务状态

检查Docker服务是否正常运行,确保Docker正常运行。

bash 复制代码
root@jeven:~# systemctl status docker
● docker.service - Docker Application Container Engine
     Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; preset: enabled)
     Active: active (running) since Thu 2025-09-18 21:50:05 CST; 3 days ago
TriggeredBy: ● docker.socket
       Docs: https://docs.docker.com
   Main PID: 858 (dockerd)
      Tasks: 30
     Memory: 5.2G (peak: 5.4G)
        CPU: 11min 54.268s
     CGroup: /system.slice/docker.service

3.2 检查Docker版本

检查Docker版本

bash 复制代码
root@jeven:~# docker -v
Docker version 28.3.3, build 980b856

3.3 检查docker compose 版本

检查Docker compose版本,确保2.0以上版本。

bash 复制代码
docker compose version

四、拉取Readeck镜像

下载Readeck容器镜像,如下所示:

bash 复制代码
docker pull codeberg.org/readeck/readeck:0.20.3

五、部署Readeck服务

5.1 创建部署目录

  • 创建部署目录
bash 复制代码
mkdir -p /data/readeck/data &&  cd /data/readeck

5.2 编辑部署文件

使用docker-cli方式部署,可参考以下命令:

bash 复制代码
docker run -d \
   --restart always \
   --name readeck \
   -p 5200:8000 \
   -v /data/readeck/data:/readeck \
   codeberg.org/readeck/readeck:0.20.3

在部署目录下,创建docker-compose.yaml文件,内容如下所示:

bash 复制代码
vim docker-compose.yaml
yaml 复制代码
version: '3'

services:
  readeck:
    image: codeberg.org/readeck/readeck:0.20.3
    container_name: readeck
    restart: always
    ports:
      - "5200:8000"
    volumes:
      - /data/readeck/data:/readec

5.3 创建Readeck容器

执行以下命令,创建Readeck容器。

bash 复制代码
docker compose up -d

5.4 查看Readeck容器状态

检查Readeck容器运行状态,确保Readeck容器正常启动。

bash 复制代码
root@jeven:/data/readeck# docker compose ps
WARN[0000] /data/readeck/docker-compose.yaml: the attribute `version` is obsolete, it will be ignored, please remove it to avoid potential confusion
NAME      IMAGE                                 COMMAND                   SERVICE   CREATED         STATUS         PORTS
readeck   codeberg.org/readeck/readeck:0.20.3   "/bin/readeck serve ..."   readeck   2 minutes ago   Up 2 minutes   0.0.0.0:5200->8000/tcp, [::]:5200->8000/tcp

5.5 检查Readeck容器日志

检查容器运行日志,确保Readeck服务正常运行。

bash 复制代码
root@jeven:/data/readeck# docker compose logs
WARN[0000] /data/readeck/docker-compose.yaml: the attribute `version` is obsolete, it will be ignored, please remove it to avoid potential confusion
readeck  | {"time":"2025-09-22T17:28:13.79547846Z","level":"INFO","msg":"workers started","num":4}
readeck  | {"time":"2025-09-22T17:28:13.795583922Z","level":"INFO","msg":"server started","addr":"tcp://0.0.0.0:8000","url":"http://localhost:8000/"}

六、访问Readeck服务

6.1 访问Readeck初始页

浏览器地址: http://<个人的服务器IP>:5200,访问Readeck初始页。如果无法访问,请确保宿主机的防火墙已关闭或已放行相关端口,对于云服务器还需配置相应的安全组规则。

6.2 注册账号

自定义设置账号密码后,点击"完成安装"。

6.3 添加书签

将博客文章链接复制粘贴到Readeck首页地址栏,点击"保存链接"。

可以看到书签列表中刚才添加的网页,我们点击即可在线浏览文章内容。

七、总结

通过本次实践,我们成功使用Docker快速部署了Readeck书签管理工具,整个过程简洁高效,体现了容器化部署的优势。Readeck凭借其清爽的界面和强大的网页内容保存能力,为个人知识管理提供了理想的解决方案。结合Docker的隔离性与可移植性,Readeck服务更易于维护和扩展,保障了数据的持久化与安全性。未来可以进一步探索其标签管理和跨设备同步功能,深度打造个性化的"数字第二大脑"。

相关推荐
小毛驴8501 小时前
mvn help:effective-settings 与 mvn help:effective-pom
java·linux·前端
silvamux_1 小时前
MiniMax API 调用教程:兼容 OpenAI 写法
java·数据库·elasticsearch
染指11101 小时前
145.Agent-LangGraph基础概念和安装和简单代码示例
java·服务器·数据库·langchain·agents
Doker 多克2 小时前
ForkJoinPool 详解
java·多线程
Wang's Blog2 小时前
Java 项目实战: 交友项目 - Dubbo 启动检查
java·dubbo·交友
十二同学啊2 小时前
Python FastAPI 项目使用 Docker 部署并映射端口(完整教程)
python·docker·fastapi
零基础1232 小时前
权限管理怎么做?从“资格”与“空间”双维度设计一套可落地的权限体系
java·服务器·数据库
starzy19902 小时前
Flink Task 调度任务深度剖析:从调度策略到故障恢复的完整链路
java·大数据·flink
开开心心_Every2 小时前
文件查重软件批量删除重复文件释放空间
java·开发语言·c#·计算机外设·ocr·excel·perl