跳至主要内容

Mealie:自託管食譜管理與備餐規劃平台

Mealie 是一款專為料理愛好者與家庭打造的自託管食譜管理系統。它支援貼上網址一鍵擷取網路食譜、日曆式每週備餐規劃,並能自動根據預定菜單生成食材採買清單。


主要特色​

  1. 一鍵網址自動抓取:只需貼上烹飪網站網址,Mealie 會自動剖析並提取食材份量、烹飪步驟、時間與圖片。
  2. 每週備餐日曆 (Meal Planner):在日曆介面上拖曳排定一週的三餐菜單,讓備餐井然有序。
  3. 自動採買清單 (Shopping Lists):一鍵將規劃食譜中的食材加入購物清單,支援自動合併相同食材項目。
  4. 家庭共享與多使用者:支援建立家庭群組,讓同住成員共同維護食譜庫與採買進度。

部署步驟 (Docker Compose)​

以下使用 Mealie 搭配 PostgreSQL 資料庫進行標準部署:

1. 建立目錄​

sudo mkdir -p /opt/stacks/mealie/data /opt/stacks/mealie/pgdata
cd /opt/stacks/mealie

2. 建立 compose.yaml​

services:
mealie:
image: ghcr.io/mealie-recipes/mealie:latest
container_name: mealie
restart: unless-stopped
ports:
- "9925:9000"
volumes:
- ./data:/app/data/
environment:
- ALLOW_SIGNUP=true
- PUID=1000
- PGID=1000
- TZ=Asia/Taipei
- BASE_URL=http://localhost:9925
# 資料庫連線設定
- DB_ENGINE=postgres
- POSTGRES_USER=mealie
- POSTGRES_PASSWORD=mealie_db_password_123
- POSTGRES_SERVER=postgres
- POSTGRES_PORT=5432
- POSTGRES_DB=mealie
depends_on:
postgres:
condition: service_healthy

postgres:
image: postgres:15-alpine
container_name: mealie-postgres
restart: unless-stopped
volumes:
- ./pgdata:/var/lib/postgresql/data
environment:
- POSTGRES_USER=mealie
- POSTGRES_PASSWORD=mealie_db_password_123
- POSTGRES_DB=mealie
healthcheck:
test: ["CMD-SHELL", "pg_isready -U mealie -d mealie"]
interval: 10s
timeout: 5s
retries: 5

3. 啟動服務​

sudo docker compose up -d

初始設定​

  1. 瀏覽器前往 http://<VM_IP>:9925。
  2. 預設管理員帳號:changeme@example.com,預設密碼:MyPassword。
  3. 首次登入後,請至右上角個人設定修改電子郵件與密碼。
  4. 點擊頂部 + Create -> Create with URL,貼上任一網路食譜連結測試自動擷取。

相關連結​