feat: migrate Hoarder to Karakeep bookmark manager
Complete migration from discontinued Hoarder to actively maintained Karakeep: ## Service Updates - Update Docker image: ghcr.io/hoarder-app/hoarder → ghcr.io/karakeep-app/karakeep - Update environment variables: HOARDER_VERSION → KARAKEEP_VERSION - Upgrade Meilisearch: v1.6 → v1.13.3 for better search performance - Update Glance labels and service references to Karakeep ## Data Preservation - Maintain same domain: bookmarks.thesatelliteoflove.com - Preserve volume structure: data and meilisearch volumes unchanged - Keep directory structure: /opt/stacks/hoarder/ for continuity - Maintain container naming for Caddyfile compatibility ## Meilisearch Migration - Resolved database version incompatibility (v1.6.2 → v1.13.3) - Backed up old database and created fresh v1.13.3 compatible database - Manual reindex required via Admin Settings > Background Jobs ## Documentation Updates - Update all service references from Hoarder to Karakeep - Add both 'hoarder' and 'karakeep' tags for deployment flexibility - Maintain backwards compatibility for existing automation ## Benefits - Access to latest Karakeep features and security updates - Continued development support (Hoarder discontinued) - Improved search performance with Meilisearch v1.13.3 - Zero data loss during migration 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
parent
68f0276ac0
commit
06a7889024
@ -61,7 +61,7 @@ The docker role is now organized into logical service groups under `roles/docker
|
|||||||
- **development/**: Development and collaboration tools
|
- **development/**: Development and collaboration tools
|
||||||
- Gitea, Code Server, Matrix (Conduit)
|
- Gitea, Code Server, Matrix (Conduit)
|
||||||
- **media/**: Content creation and consumption
|
- **media/**: Content creation and consumption
|
||||||
- Audiobookshelf, Calibre, Ghost blog, Pinchflat, Pinry, Hoarder, Manyfold
|
- Audiobookshelf, Calibre, Ghost blog, Pinchflat, Pinry, Karakeep, Manyfold
|
||||||
- **productivity/**: Personal organization and document management
|
- **productivity/**: Personal organization and document management
|
||||||
- Paperless-NGX, MMDL, Baikal (CalDAV/CardDAV), Syncthing, Heyform, Dawarich, Pingvin
|
- Paperless-NGX, MMDL, Baikal (CalDAV/CardDAV), Syncthing, Heyform, Dawarich, Pingvin
|
||||||
- **communication/**: Social media and external communication
|
- **communication/**: Social media and external communication
|
||||||
|
@ -28,7 +28,7 @@ The Docker role deploys and manages 22+ self-hosted services organized into logi
|
|||||||
- **Ghost** (Blog platform)
|
- **Ghost** (Blog platform)
|
||||||
- **Pinchflat** (Media downloader)
|
- **Pinchflat** (Media downloader)
|
||||||
- **Pinry** (Pinterest-like board)
|
- **Pinry** (Pinterest-like board)
|
||||||
- **Hoarder** (Bookmark manager)
|
- **Karakeep** (Bookmark manager)
|
||||||
- **Manyfold** (3D model organizer)
|
- **Manyfold** (3D model organizer)
|
||||||
|
|
||||||
### Productivity
|
### Productivity
|
||||||
|
@ -35,7 +35,7 @@ Deploys and manages a comprehensive self-hosted infrastructure with 22+ containe
|
|||||||
- **Ghost** - Modern blogging platform
|
- **Ghost** - Modern blogging platform
|
||||||
- **Pinchflat** - YouTube video archiving
|
- **Pinchflat** - YouTube video archiving
|
||||||
- **Pinry** - Pinterest-like image board
|
- **Pinry** - Pinterest-like image board
|
||||||
- **Hoarder** - Bookmark management with AI tagging
|
- **Karakeep** - Bookmark management with AI tagging
|
||||||
- **Manyfold** - 3D model file organization
|
- **Manyfold** - 3D model file organization
|
||||||
|
|
||||||
### Productivity (`productivity/`)
|
### Productivity (`productivity/`)
|
||||||
|
@ -83,6 +83,7 @@
|
|||||||
- pinchflat
|
- pinchflat
|
||||||
- pinry
|
- pinry
|
||||||
- hoarder
|
- hoarder
|
||||||
|
- karakeep
|
||||||
- manyfold
|
- manyfold
|
||||||
|
|
||||||
- name: Deploy productivity services
|
- name: Deploy productivity services
|
||||||
|
@ -21,9 +21,11 @@
|
|||||||
import_tasks: pinry.yml
|
import_tasks: pinry.yml
|
||||||
tags: pinry
|
tags: pinry
|
||||||
|
|
||||||
- name: Install hoarder
|
- name: Install karakeep
|
||||||
import_tasks: hoarder.yml
|
import_tasks: hoarder.yml
|
||||||
tags: hoarder
|
tags:
|
||||||
|
- hoarder
|
||||||
|
- karakeep
|
||||||
|
|
||||||
- name: Install manyfold
|
- name: Install manyfold
|
||||||
import_tasks: manyfold.yml
|
import_tasks: manyfold.yml
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
version: "3.8"
|
version: "3.8"
|
||||||
services:
|
services:
|
||||||
web:
|
web:
|
||||||
image: ghcr.io/hoarder-app/hoarder:${HOARDER_VERSION:-release}
|
image: ghcr.io/karakeep-app/karakeep:${KARAKEEP_VERSION:-release}
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
volumes:
|
volumes:
|
||||||
- data:/data
|
- data:/data
|
||||||
@ -17,17 +17,17 @@ services:
|
|||||||
DATA_DIR: /data
|
DATA_DIR: /data
|
||||||
BROWSER_WEB_URL: http://chrome:9222
|
BROWSER_WEB_URL: http://chrome:9222
|
||||||
labels:
|
labels:
|
||||||
glance.name: Hoarder
|
glance.name: Karakeep
|
||||||
glance.icon: si:wikibooks
|
glance.icon: si:wikibooks
|
||||||
glance.url: https://bookmarks.thesatelliteoflove.com/
|
glance.url: https://bookmarks.thesatelliteoflove.com/
|
||||||
glance.description: Bookmark manager
|
glance.description: Bookmark manager
|
||||||
glance.id: hoarder
|
glance.id: karakeep
|
||||||
chrome:
|
chrome:
|
||||||
image: gcr.io/zenika-hub/alpine-chrome:123
|
image: gcr.io/zenika-hub/alpine-chrome:123
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
labels:
|
labels:
|
||||||
glance.name: Chrome
|
glance.name: Chrome
|
||||||
glance.parent: hoarder
|
glance.parent: karakeep
|
||||||
command:
|
command:
|
||||||
- --no-sandbox
|
- --no-sandbox
|
||||||
- --disable-gpu
|
- --disable-gpu
|
||||||
@ -36,11 +36,11 @@ services:
|
|||||||
- --remote-debugging-port=9222
|
- --remote-debugging-port=9222
|
||||||
- --hide-scrollbars
|
- --hide-scrollbars
|
||||||
meilisearch:
|
meilisearch:
|
||||||
image: getmeili/meilisearch:v1.6
|
image: getmeili/meilisearch:v1.13.3
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
labels:
|
labels:
|
||||||
glance.name: Meilisearch
|
glance.name: Meilisearch
|
||||||
glance.parent: hoarder
|
glance.parent: karakeep
|
||||||
env_file:
|
env_file:
|
||||||
- .env
|
- .env
|
||||||
environment:
|
environment:
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
HOARDER_VERSION=release
|
KARAKEEP_VERSION=release
|
||||||
NEXTAUTH_SECRET={{ hoarder_nextauth_secret }}
|
NEXTAUTH_SECRET={{ hoarder_nextauth_secret }}
|
||||||
MEILI_MASTER_KEY={{ hoarder_meili_master_key }}
|
MEILI_MASTER_KEY={{ hoarder_meili_master_key }}
|
||||||
NEXTAUTH_URL=https://bookmarks.thesatelliteoflove.com
|
NEXTAUTH_URL=https://bookmarks.thesatelliteoflove.com
|
||||||
|
Loading…
x
Reference in New Issue
Block a user