URLを貼るだけでレシピ自動取り込み!家族で使えるセルフホスト型献立管理アプリ「Mealie」

タグ セルフホストレシピ管理献立計画DockerFastAPIVue/Nuxt買い物リスト家族向けcolumnコラムlinuxLinuxwindowsWindowsGitHubオープンソースmealie-recipesmealie
🚀 今すぐ試せます! デモスクリプトをダウンロードして、解凍後にターミナルで bash ファイル名.sh を実行してください(中身を一度確認してから実行すると安心です)。 (macOS / Linux 環境が必要)

URLを貼るだけでレシピ自動取り込み!家族で使えるセルフホスト型献立管理アプリ「Mealie」

ひとことでいうと

Mealie(ミーリー)は、家族全員で使えるレシピ管理・献立計画の Web アプリです。レシピサイトの URL を貼り付けるだけで、材料・手順・栄養情報を自動で取り込んでくれます。週単位の献立カレンダーに料理を並べると、必要な食材が買い物リストに自動でまとまる仕組みです。自分のサーバーやパソコンで動かす「セルフホスト型」なので、データが外部に漏れる心配がありません。Docker Compose(後述)という仕組みを使えば、コマンド一発で自宅サーバーに立ち上げられる設計になっています。


こんな人におすすめ

1. 毎週の献立決めを楽にしたい家庭 「今日何食べる?」という会話が毎晩の悩みになっている家庭に向いています。週単位の献立カレンダーとワンクリックの買い物リスト生成で、計画から買い物まで一気に効率化できます。マルチユーザー対応なので、家族それぞれがアカウントを持って共同で管理できます。

2. お気に入りレシピをひとまとめにしたい料理好き 複数のレシピサイトに散らばったお気に入りを、URL をコピーするだけでまとめてアーカイブできます。タグ・カテゴリ・難易度を付けてフィルタリングできるので、レシピが増えても探しやすい状態を保てます。

3. データを外部に出したくない、プライバシー重視の方 完全セルフホストで動くため、レシピデータが外部のクラウドサービスに送られることなく、自分のサーバーの中だけで完結します。家族の食習慣や個人情報を外部に預けたくない方、技術に詳しくプライバシーを大切にしたい方に特に適しています。


インストール・使い方

Mealie の推奨セットアップ方法は Docker Compose です。Docker とは、アプリをまるごとひとつの「箱(コンテナ)」に入れて動かす仕組みで、環境の差異を気にせずに動作させられます。Docker Compose はその「箱」を複数まとめて管理するツールです。以下の手順はターミナル(文字で命令を送る画面)にコマンドをコピー&ペーストするだけで進められます。


Step 1 — Docker Compose ファイルを取得する

mkdir mealie && cd mealie
curl -L https://raw.githubusercontent.com/mealie-recipes/mealie/mealie-next/docker/docker-compose.yml -o docker-compose.yml

mkdir mealie で「mealie」という名前のフォルダを作り、cd mealie でそこに移動しています。その後 curl コマンドで公式の設定ファイル(docker-compose.yml)をダウンロードしています。このファイル一枚に、アプリを動かすための設定がすべて書かれています。


Step 2 — 環境変数を確認・編集する

ダウンロードした docker-compose.yml をテキストエディタで開き、必要な箇所を書き換えます。環境変数とは、アプリの動作をカスタマイズするための「設定メモ」のようなものです。

  • ALLOW_SIGNUP — 新規ユーザーの自己登録を許可するかどうかの設定
  • DEFAULT_GROUP — 最初のグループ(家族単位などの管理グループ)名
  • データベースのパスワード — 初期値のままにしないよう書き換えを推奨

デフォルトでは軽量な SQLite(ファイルひとつでデータを管理するデータベース)が使われるため、家庭用の小規模運用ならそのまま起動できます。大人数での本格利用では PostgreSQL(より本格的なデータベース)への切り替えも公式で推奨されています。


Step 3 — コンテナを起動する

docker compose up -d

このコマンドで Docker がアプリをバックグラウンドで起動します。-d は「バックグラウンド実行」の指定です。起動後は http://localhost:9000(デフォルト)をブラウザで開くとセットアップ画面が表示されます。初回ログインのデフォルト認証情報(メールアドレス・パスワード)はすぐに変更することを強くおすすめします。


Step 4 — レシピをインポートする

ダッシュボード右上の「+」ボタン → 「URL からインポート」を選択して、お気に入りのレシピサイトの URL を貼り付けます。タイトル・材料・手順が自動で取り込まれます。Schema.org 形式(構造化データ)に対応したサイトであれば、特に精度高くインポートできます。インポート後にタグやカテゴリを付けておくと、後で献立計画に使いやすくなります。


動かしてみた

実際にリポジトリの構成を確認したところ、mealie/(バックエンド)・frontend/(Vue/Nuxt フロントエンド)・docker/(Docker 設定一式)の 3 つのディレクトリがきれいに整理されていました。Docker 関連ファイルは以下のように一式そろっています。

./docker/Dockerfile
./docker/entry.sh
./docker/docker-compose.dev.yml
./docker/docker-compose.yml
./docker/healthcheck.sh

healthcheck.sh が同梱されているため、Docker コンテナの死活監視(ヘルスチェック=アプリが正常に動いているか定期的に確認する仕組み)も標準で備わっていることが確認できました。フロントエンド側は frontend/package.jsonfrontend/nuxt.config.ts が存在しており、Nuxt 3 ベースの Vue アプリとして構成されています。バックエンドには mealie/app.pymealie/main.py があり、FastAPI 系の ASGI アプリケーション(Python 製の高速 Web フレームワーク)として実装されています。動作環境として Python 3.12.13 が利用可能であることも確認できました。構成要素がしっかり分離されており、将来的にカスタマイズや拡張を行いやすい設計になっています。


デモについて

Mealie はデータベース・バックエンド API・フロントエンドが三位一体で動作するフルスタック Web アプリケーションです。そのため、ブラウザ内だけで動く簡易デモとして提供することは構造上難しくなっています。実際の操作感を試したい場合は、公式の デモサイト(demo.mealie.io) で体験できます。本格的に使い始めるには、上記「インストール・使い方」の手順で Docker Compose 環境を立ち上げるのが最も確実な方法です。


はじめの一歩:実践のコツ

Mealie を起動したら、次のポイントを意識すると使いやすさが一気に上がります。

  • まず URL インポートを 5 件試してみる — いろいろなレシピサイトで試すことで、インポート精度の感触がつかめます。Schema.org 対応サイトだと材料・手順がそのまま入ります。
  • タグとカテゴリをあらかじめ決めておく — 「主菜」「副菜」「お弁当」など自分なりの分類を最初に決めておくと、レシピが増えたときに迷わずに済みます。
  • ミールプランナーで 1 週間分を入力してみる — 献立を入れた瞬間に買い物リストが自動更新されます。この連動感を早めに体験しておくと、継続的に使うモチベーションが上がります。
  • 初回ログイン後すぐにパスワードを変更する — デフォルトの認証情報のまま放置すると、ネットワーク上から不正アクセスされるリスクがあります。必ず変更しましょう。
  • API ドキュメントを一度のぞいてみるhttp://localhost:9000/docs にアクセスすると Swagger UI(API の仕様書兼テスト画面)が開き、外部連携のイメージが広がります。プログラミングに慣れてきたら自動化の入口になります。
  • 紙のレシピも UI エディタで手動入力できる — URL がないレシピカードや料理本のレシピも、手入力でデジタルアーカイブにできます。写真も添付できるので見た目でも探せます。

活用アイデア

  • 週次食材の注文自動化 — ミールプランナーで週の献立を決めてショッピングリストをエクスポートし、食材宅配サービスの注文に活用できます。REST API が公開されているため、n8n や Home Assistant などの自動化プラットフォームと連携してワンクリック注文フローを組むことも可能です。
  • 家族間のレシピ共有と共同編集 — マルチユーザー・グループ機能を活用すれば、家族やシェアハウスのメンバーがそれぞれお気に入りレシピを共有ライブラリに追加できます。グループ単位でレシピの公開範囲を管理できるので、職場のランチ部など小さなコミュニティへの応用も考えられます。
  • 紙レシピのデジタルアーカイブ化 — 紙のレシピカードや雑誌の切り抜きを UI エディタで手動入力し、写真を添付してデジタル保存できます。将来の献立計画や検索に役立つビジュアルなアーカイブが作れます。
  • 栄養バランスの可視化 — インポート時に取得した栄養情報を活用して、週単位の献立でカロリーや栄養素のバランスを確認できます。健康管理や食事制限に取り組む方にとって、継続的に献立を記録する基盤として役立ちます。
  • REST API を使った自作ダッシュボード — Swagger UI で API の仕様を確認しながら、レシピデータや献立情報を自作のダッシュボードアプリに取り込めます。プログラミング学習の題材としても、実用的な API 連携の練習になります。
  • 多言語対応を活かした語学学習 — 35 言語以上に対応しているため、普段使い慣れた言語と学習中の言語で同じレシピを表示する使い方もできます。料理を通じて外国語の語彙に触れる、ユニークな学習環境として活用できます。

用語とポイント解説

ミールプランナー 週単位でレシピを日付に紐付けて献立を管理する機能です。かんたんに言うと、カレンダーに「月曜の夕食はこれ」と並べていく画面です。配置したレシピの食材が自動でショッピングリストに反映されるため、手で書き写す手間がありません。

ショッピングリスト 献立プランから材料を自動集計し、整理してくれるリスト機能です。かんたんに言うと、「今週必要な食材をまとめたメモ」が自動で作られる機能です。スーパーでそのまま使えるよう、食材の種類ごとに整理されます。

クックブック レシピをテーマ別にまとめたフォルダのような機能です。かんたんに言うと、「夏のおかず」「お弁当レシピ」「パパが得意な料理」など、自分で作ったカテゴリにレシピをグループ化して管理できます。目的に合わせて素早くレシピを探し出せるようになります。

セルフホスト 自分のサーバーや自宅のパソコン上でアプリを動かすことです。かんたんに言うと、「データをすべて自分の手元に置いて使う」方式です。クラウドサービスのように外部の会社のサーバーにデータが保存されないため、プライバシーをしっかり守れます。

Docker Compose 複数の Docker コンテナ(アプリの「箱」)をまとめて起動・管理するツールです。かんたんに言うと、「アプリの部品を一括で組み立てて動かす便利な司令塔」です。Mealie のようにバックエンド・フロントエンド・データベースが分かれているアプリを、コマンド一発でまとめて起動できます。

REST API HTTP(Web のデータ通信規格)経由でアプリのデータを読み書きできるインターフェースです。かんたんに言うと、「外のプログラムから Mealie のレシピや献立情報を操作するための窓口」です。自作アプリや自動化ツールと Mealie を繋げるときに使います。

AGPL ライセンス GNU Affero General Public License の略で、オープンソースライセンスの一種です。かんたんに言うと、「ソースコードを公開・改変してもよいが、変えた場合はその内容も公開しなければならない」というルールです。商用利用や改変の際にはライセンス条件の確認が必要です。

Schema.org レシピ情報などを機械が読み取りやすい形式で記述するための標準仕様です。かんたんに言うと、「レシピサイトが材料や手順を特定の書き方でページに埋め込む約束事」です。この形式に対応したサイトから Mealie にインポートすると、材料・手順の取り込み精度が高くなります。

ASGI アプリケーション Asynchronous Server Gateway Interface の略で、Python 製の非同期 Web アプリの仕組みです。かんたんに言うと、「複数のリクエストを同時にさばける、速くて効率的な Web サーバーの動かし方」です。Mealie のバックエンドはこの仕組みを採用しているため、多人数が同時に使っても軽快に動作します。


Mealie は「レシピの収集」「献立の計画」「買い物の準備」という毎日の作業を一本につなぐ、実用的なセルフホストアプリです。ぜひ家族の週次献立管理や、お気に入りレシピの一元アーカイブなどに活用してみてはいかがでしょうか。