以前、当サイトでサービス終了したPocketの代替アプリについての記事を書きましたが、実際に僕が使っている「Karakeep」と、その構築方法について説明しようと思います。

Pocket終了で「あとで読む」はどうする?
まずはおさらいですが、「あとで読む」の定番アプリPocketが2025年7月8日にサービス終了しました。悲しい。。。
あとで読むを続けるのであれば悲しむ暇もなく、代替サービスを探さないといけません。そこで前回、調べてこれは良さそうかなと思ったアプリを紹介する記事を書いたわけですが、僕が実際に使用しているサービスは前回の記事では紹介していませんでした。
なぜかは後述します。
Pocketの代替としてKarakeepがおすすめな理由
今回紹介する「Karakeep」は、普通にインストールして使うアプリというより、サーバーのDocker上で動かすタイプのサービスです。構築自体はそこまで難しくはないのですが、多分そういうのを求めていない人が見るかなと思い、前回は紹介しませんでした。
ただ、自宅サーバーを持っている人にとっては大きなメリットがいくつかあります。
完全無料のオープンソース
Karakeepはオープンソースで、自分のサーバーに構築できます。サーバーの維持費はかかりますが、基本機能を使うための月額料金はありません。
データを自分で管理できるので、外部サービスの終了に振り回されにくいのがいいところです。もし自分で構築することに抵抗感がない方はこちらの方がいいかもしれません。
リンク以外もまとめて保存できる
Webページだけではなく、メモ、画像、PDFも保存できます。リストやタグで整理でき、Meilisearchを使った全文検索にも対応しています。
Chrome、Firefox、Safari向けの拡張機能と、iOS・Androidアプリも用意されています。サーバーを立てた後は、普通の「あとで読む」サービスに近い感覚で使えます。
サーバーの管理は自分で行う必要がある
もちろん、良いことばかりではありません。アップデート、バックアップ、HTTPS化、外部公開する場合のセキュリティ対策は自分で行う必要があります。
このあたりが面倒に感じるなら、クラウド型の代替サービスを選んだ方が楽です。逆にDockerを普段から触っているなら、構築のハードルはそこまで高くありません。
Karakeepを構築する前に準備するもの
今回はLinuxの自宅サーバーへDocker Composeで構築します。NASやミニPCでも、DockerとDocker Composeが動く環境なら基本の流れは同じです。
- 常時起動できるLinuxサーバーまたはNAS
- DockerとDocker Compose
- ターミナルへSSH接続できる環境
- 外出先から使う場合はHTTPSでアクセスできる仕組み
公式の標準構成では、Karakeep本体に加えて、ページ取得用のChromeと全文検索用のMeilisearchが動きます。小さなサーバーへ入れる場合は、ほかのコンテナを含めたメモリ使用量も確認しておいた方が安心です。
Docker ComposeでKarakeepを構築する
ここから実際に構築します。Composeファイルを記事内へ固定してしまうと、Karakeep側の更新で古くなるため、公式GitHubにある現行ファイルをそのまま取得します。
1. Karakeep用のディレクトリを作る
mkdir -p ~/karakeep-app
cd ~/karakeep-app
2. 公式のdocker-compose.ymlを取得する
wget https://raw.githubusercontent.com/karakeep-app/karakeep/main/docker/docker-compose.yml
2026年7月13日に確認した公式Composeは、web、chrome、meilisearchの3サービス構成です。KarakeepのデータとMeilisearchのデータは、それぞれDockerの名前付きボリュームへ保存されます。
配布元が変わっていないことを確認したい場合は、ダウンロード前に公式のDocker手順からリンクを開いてください。出所の分からないComposeファイルは使わない方がいいです。
3. .envを作成する
続いて、同じディレクトリに.envを作ります。
nano .env
最小構成は以下です。
KARAKEEP_VERSION=release
NEXTAUTH_SECRET=生成したランダム文字列
MEILI_MASTER_KEY=生成した英数字のランダム文字列
NEXTAUTH_URL=https://karakeep.your-domain.tld
NEXTAUTH_SECRETとMEILI_MASTER_KEYは、そのまま使わず必ず自分で生成します。
openssl rand -base64 36
openssl rand -base64 36 | tr -dc 'A-Za-z0-9'
1行目の出力をNEXTAUTH_SECRET、2行目の出力をMEILI_MASTER_KEYへ設定します。生成した値は外部へ公開しないでください。
NEXTAUTH_URLには、実際にKarakeepへアクセスするときのURLを指定します。リバースプロキシで公開するならHTTPSのURL、家庭内LANだけで使うならサーバーのアドレスと3000番ポートに合わせます。ここが違うと、ログアウト時などに別のアドレスへ飛ばされることがあります。
4. コンテナを起動する
docker compose up -d
起動状態は次のコマンドで確認できます。
docker compose ps
docker compose logs --tail=100 web
web、chrome、meilisearchが起動したら、ブラウザからサーバーの3000番ポートへアクセスします。初回はユーザーを作成してログインします。
5. 自分のアカウントを作ったら新規登録を止める
自分だけで使う場合、アカウント作成後は.envへ以下を追加して、新規ユーザー登録を停止しておくのがおすすめです。
DISABLE_SIGNUPS=true
.envを変更した後は、Composeを再実行します。
docker compose up -d
インターネットへ直接3000番ポートを開けるのは避け、外部から使う場合はリバースプロキシとHTTPS、またはVPNを使います。ここは自宅サーバーの構成によって方法が変わるため、無理に同じ設定をコピーしない方が安全です。
AI自動タグ付けは後から追加できる
KarakeepはOpenAIやOllamaを使った自動タグ付けに対応しています。ただし、あとで読む環境を作るだけなら必須ではありません。まずは何も設定せずに使い始めて大丈夫です。
OpenAIを使う場合はAPI利用料が発生します。Ollamaならローカルで動かせますが、その分CPUやメモリ、モデルによってはGPUも必要です。最初から全部盛りにせず、必要になってから追加するのが楽です。
PocketからKarakeepへデータを移行する
ここは現在の状況に注意が必要です。KarakeepはPocket形式のCSVインポートに対応していますが、Pocket側のデータエクスポートは2025年11月12日に終了しました。
そのため、以前にPocketから書き出したCSVを手元に保存している場合だけ、次の手順で移行できます。今からPocketへアクセスして新しくCSVを取得することはできません。
- Karakeepへログインする
- 設定画面を開く
- インポートから「Pocket export」を選ぶ
- 保存済みのPocket CSVを指定する
- 件数とタグを確認してから整理する
公式ドキュメントによると、タイトル、タグ、追加日時は引き継がれ、インポート用のリストが自動作成されます。一方で、CSV内のURLを選んで一部だけ取り込むことはできず、すべて追加されます。
大量に取り込む場合は、先にCSVのコピーを作り、不要な行がないか確認しておいた方がいいです。インポート直後はページ取得や検索登録が続くため、処理が落ち着くまでサーバーの負荷も上がります。
CSVを保存していなかった場合、残念ながらPocket側からデータを復元する公式な方法は確認できません。その場合は、ブラウザに残っているブックマークをHTMLで書き出し、Karakeepへ取り込めるものがないか確認します。
ブラウザ拡張とスマホアプリを設定する
サーバーを立てただけだと、毎回Karakeepを開いてURLを貼ることになります。ChromeやFirefox、Safariの拡張機能を入れて、KarakeepのサーバーURLを設定しておくと、Pocketに近い感覚で保存できます。
iOSとAndroidアプリもあります。スマホの共有メニューからKarakeepへ送れるようにしておくと、移行後も使い方はそれほど変わりません。
Karakeepの更新とバックアップ
更新方法
KARAKEEP_VERSION=releaseを使っている場合、公式が案内している更新コマンドは以下です。
cd ~/karakeep-app
docker compose up --pull always -d
更新後は、コンテナの状態とログを確認します。
docker compose ps
docker compose logs --tail=100 web
Karakeepは開発が活発なので、いきなり更新せず、リリースノートとバックアップを確認してから実行した方が安全です。更新時期を自分で管理したいなら、KARAKEEP_VERSIONを特定バージョンへ固定する方法もあります。
バックアップしておくもの
最低でも、Karakeepのバックアップ機能から取得したデータと、Composeで使っているデータボリュームを別の保存先へ退避します。.envも必要ですが、秘密鍵が入っているためアクセス権限には注意してください。
- Karakeep本体のデータと保存したアセット
- Meilisearchのデータ
docker-compose.ymlと.env
稼働中のSQLiteファイルだけを直接コピーすると整合性を崩す可能性があります。アプリのバックアップ機能を使うか、コンテナを停止してからボリューム全体をバックアップする運用にしておくのが無難です。
Karakeepでよくあるつまずき
ログイン後に違うURLへ飛ばされる
NEXTAUTH_URLが、実際にアクセスしているURLと合っているか確認します。リバースプロキシでHTTPS化した後もローカル用のURLが残っていると、リダイレクト先がおかしくなることがあります。
検索できない
Meilisearchが起動しているか、MEILI_MASTER_KEYがKarakeep側と一致しているか確認します。公式のComposeを大きく変更していなければ、まずdocker compose psとログを見るのが早いです。
保存したページの画像や本文を取得できない
chromeコンテナが停止していないか確認します。JavaScriptを多用するサイトはChromeを使って取得するため、Karakeep本体だけ動いていてもスクリーンショットや本文取得に失敗することがあります。
Karakeepに関するよくある質問
Karakeepは完全に無料ですか?
Karakeep自体はオープンソースで利用できます。ただし、自宅サーバーの電気代やドメイン代、外部のAI APIを使う場合の利用料は別です。
Pocketのデータを今から取り出せますか?
できません。MozillaはPocketのエクスポートを2025年11月12日に終了しています。以前に保存したCSVがあればKarakeepへ取り込めます。
外部公開しなくても使えますか?
家庭内LANだけでも使えます。外出先から使うなら、ポートを直接開けるのではなく、VPNまたはHTTPS対応のリバースプロキシを使う方が安全です。
AIの設定は必要ですか?
必要ありません。AIを設定しなくても、リンク保存、リスト、タグ、全文検索などの基本機能は使えます。
まとめ
Karakeepは、自宅サーバーで「あとで読む」を続けたい人にちょうどいいPocket代替です。Docker Composeで構築でき、ブラウザ拡張やスマホアプリもあるので、サーバーさえ用意できれば普段の使い方で困ることはあまりありません。
一方で、アップデートとバックアップは自分の仕事になります。まずは家庭内LANで試し、使い続けられそうならHTTPS化や外部アクセスを整える順番がおすすめです。
PocketのCSVを手元に残している人は、早めにKarakeepへ取り込んで中身を確認しておきましょう。CSVがない場合でも、これから保存する記事を自分のサーバーへ置けるので、同じ終了に振り回されにくい環境を作れます。
参照元
- Karakeep公式ドキュメント:Docker
- Karakeep公式ドキュメント:Configuration
- Karakeep公式ドキュメント:Import your library
- Karakeep公式ドキュメント:Quick capture and sharing
- Mozilla Support:Pocket has shut down


