If you’re tired of recipe websites cluttered with ads, popup videos, and life stories before the ingredients, it’s time to take control with Tandoor Recipes. This self-hosted recipe manager lets you import, organize, and share your recipes without the noise. With features like automated meal planning, shopping lists, and cookbook imports, Tandoor transforms your kitchen workflow into something actually enjoyable.
In this guide, I’ll walk you through setting up Tandoor Recipes on Docker, configuring it properly, and exploring its powerful features. Whether you’re running a mini PC homelab or a full server, this setup takes less than 15 minutes.
What is Tandoor Recipes?
Tandoor Recipes is an open-source recipe manager designed for home cooks who want complete control over their kitchen data. Unlike commercial alternatives like Paprika or Copy Me That, Tandoor is completely free, privacy-focused, and runs entirely on your own hardware.
Key Features:
- Recipe Import: Scrape recipes from any website automatically
- Meal Planning: Plan your week with drag-and-drop calendar interface
- Shopping Lists: Auto-generate lists from planned meals
- Cookbook Management: Organize recipes into custom cookbooks
- Multi-User Support: Share recipes with family members
- Recipe Scaling: Adjust ingredient quantities on the fly
- Nutrition Information: Track macros and calories
- Mobile-Friendly: Responsive design works great on tablets
- API Access: Integrate with home automation systems
Why Self-Host Your Recipe Manager?
Privacy First: Your recipes, meal plans, and shopping lists stay on your server. No tracking, no data mining, no selling your eating habits to advertisers.
No Subscriptions: Commercial recipe managers charge $5-15/month. Tandoor runs on hardware you already own for free.
Full Control: Customize everything. Back up your data. Export whenever you want. No vendor lock-in.
Better Performance: No slow ad-laden websites. Your recipes load instantly from your local network.
Family Sharing: Give everyone in your household their own account without paying per-user fees.
Prerequisites
Before we begin, you’ll need:
- A server running Linux (Ubuntu, Debian, or similar)
- Docker and Docker Compose installed
- At least 2GB RAM and 10GB storage
- Basic command line knowledge
- A reverse proxy (optional but recommended for HTTPS)
If you’re setting up a new homelab server, I recommend checking out budget mini PCs with Intel N100 processors — they’re perfect for lightweight services like Tandoor.
Step 1: Create the Docker Compose File
First, create a directory for Tandoor and navigate to it:
| |
Create a docker-compose.yml file:
| |
Important Configuration Notes:
- SECRET_KEY: Generate a random 50+ character string. You can use
openssl rand -base64 48to generate one. - POSTGRES_PASSWORD: Change this to a strong password.
- TIMEZONE: Set to your local timezone (e.g.,
Europe/London,Asia/Tokyo). - Ports: Port 8000 will be your main access port. Port 8080 is internal.
Step 2: Create the Nginx Configuration
Tandoor requires an Nginx reverse proxy to serve static files efficiently. Create the configuration:
| |
Create nginx/nginx-conf/recipes.conf.template:
| |
Step 3: Launch Tandoor
Start the containers:
| |
Wait about 30 seconds for the database to initialize, then check the logs:
| |
You should see messages indicating the server is running. Look for:
Booting worker with pid: X
Step 4: Create Your Admin Account
Access Tandoor at http://your-server-ip:8000. You’ll see a login screen.
Create an admin user from the command line:
| |
Enter a username, email (optional), and password when prompted.
Now log in through the web interface with your new credentials.
Step 5: Configure Tandoor Settings
Once logged in, click your profile icon → Settings → System.
Essential Settings to Configure:
- Recipe Import: Enable automatic recipe scraping under “Recipe Scrapers”
- Allowed Hosts: Add your domain or IP address
- Shopping List: Configure your preferred grocery store layout
- Units: Set preferred measurement system (metric/imperial)
- Language: Choose your interface language
Step 6: Import Your First Recipe
Let’s test the recipe import feature:
- Click Recipes → Import
- Choose URL Import
- Paste a recipe URL (try NYT Cooking, AllRecipes, or Serious Eats)
- Click Import
Tandoor will scrape the ingredients, instructions, timing, and even images automatically. Review the imported data and click Save.
Advanced Features
Meal Planning
The meal planner is where Tandoor truly shines:
- Navigate to Meal Plan in the sidebar
- Drag recipes from your collection onto calendar days
- Set meal types (breakfast, lunch, dinner, snack)
- Add serving sizes for each meal
Pro Tip: Use the “Shopping List” button to automatically generate a grocery list from your planned meals. Tandoor groups ingredients by category and consolidates quantities.
Recipe Cookbooks
Organize recipes into themed collections:
- Go to Books → Create Book
- Name it (e.g., “Quick Weeknight Dinners”, “Vegan Meals”)
- Add recipes by clicking the book icon on any recipe
Nutrition Tracking
Enable nutrition calculations in Settings → System → Nutrition. Tandoor will attempt to calculate calories and macros for recipes with standard ingredients.
For more accurate tracking, integrate with USDA FoodData Central by adding your API key in the settings.
Recipe Sharing
Tandoor supports multi-user installations:
- Go to System → Users
- Click Create User
- Set permissions (view-only, editor, admin)
Share specific recipes or entire cookbooks with family members. Great for collaborative meal planning.
Keyword & Tag System
Create a taxonomy for your recipes:
- Keywords: Searchable tags like “gluten-free”, “under-30-minutes”, “one-pot”
- Foods: Ingredient-based tags that help with shopping list organization
- Units: Custom measurement units for regional recipes
Backup Strategy
Tandoor stores everything in PostgreSQL and media files. Back up regularly:
| |
Automate this with a cron job for weekly backups. Store backups on a separate NAS drive or cloud storage.
Troubleshooting Common Issues
Recipe Import Fails
If imports aren’t working:
- Check
docker-compose logs web_recipesfor errors - Verify the website isn’t blocking scrapers
- Try manual import instead (copy/paste ingredients and steps)
Static Files Not Loading
If CSS/images are broken:
- Run
docker-compose exec web_recipes python manage.py collectstatic - Restart containers:
docker-compose restart
Slow Performance
For large recipe collections (500+ recipes):
- Increase PostgreSQL memory in docker-compose.yml:
1command: postgres -c shared_buffers=256MB -c max_connections=200 - Add database indexes:
docker-compose exec web_recipes python manage.py migrate
Expose Tandoor with HTTPS (Optional)
For secure remote access, use a reverse proxy like Traefik or Caddy.
Quick Caddy setup:
Create a Caddyfile:
recipes.yourdomain.com {
reverse_proxy localhost:8000
}
Run Caddy:
| |
Caddy automatically handles HTTPS certificates via Let’s Encrypt.
Mobile Access
Tandoor’s responsive design works well on phones and tablets, but for an app-like experience:
- Open Tandoor in your mobile browser
- Tap Share → Add to Home Screen
- This creates a progressive web app (PWA) icon
Now you have kitchen-friendly access to recipes without installing anything.
Integration with Home Assistant
Tandoor’s API enables smart home automation. Example uses:
- Voice Commands: “Alexa, what’s for dinner tonight?”
- Smart Displays: Show today’s meal plan on a kitchen tablet
- Shopping List Sync: Push grocery lists to your phone automatically
Access the API at http://your-server:8000/docs for full documentation.
Alternatives to Tandoor
If Tandoor doesn’t fit your needs, consider:
- Mealie: Similar features, slightly different UI approach
- Recipe Sage: More minimalist, great for simple collections
- Grocy: Kitchen management focused on inventory and expiration tracking
Tandoor strikes the best balance between features and usability for most home cooks.
Hardware Recommendations
Tandoor is lightweight but benefits from decent specs if you’re importing hundreds of recipes:
Minimum:
- 2GB RAM
- Dual-core CPU
- 10GB storage
Recommended:
- 4GB RAM
- Quad-core CPU (Intel N100 is perfect)
- 20GB SSD storage
If you’re building a dedicated homelab server, consider a small form factor PC that can run multiple Docker services alongside Tandoor.
Final Thoughts
Tandoor Recipes proves you don’t need a subscription service to manage your kitchen digitally. It’s fast, privacy-focused, and feature-rich enough to replace any commercial alternative.
The hardest part of self-hosting is getting started. Once Tandoor is running, it just works. Import your favorite recipes, plan next week’s meals, and enjoy ad-free cooking instructions on your tablet without supporting another surveillance-based business model.
Your recipes, your data, your kitchen.
Quick Reference Commands
| |
Related Articles:
- How to Set Up Nextcloud on Docker — Complete Guide
- Best Self-Hosted Alternatives to Google Photos in 2026
- Docker Compose Best Practices for Self-Hosters