Skip to content

How to setup Mealie (with Docker & Caddy)

Untested

Description

Mealie is an intuitive and easy to use recipe management app.
It's designed to make your life easier by being the best recipes management experience on the web and providing you with an easy to use interface to manage your growing collection of recipes.

Create a DNS record

Go to cPanel and add a new record (e.g. mealie.akdscloud.eu).

Caddy

mealie.akdscloud.eu:443 {
    header Strict-Transport-Security max-age=31536000;
    reverse_proxy localhost:9000
}

Folders

Create the folder structure.

cd ~/services
mkdir -p mealie/data

Docker

  1. Add the mealie section to your docker-compose.yml file:

      mealie:
        image: ghcr.io/mealie-recipes/mealie:latest
        container_name: mealie
        restart: unless-stopped
        environment:
          - PUID=1000
          - PGID=1000
          - TZ=Europe/Bucharest
          - DB_TYPE=sqlite
          - BASE_URL=https://mealie.akdscloud.eu
        ports:
          - 9000:9000
        volumes:
          - ./mealie/data:/app/data
        depends_on:
          - caddy
    
  2. Download and start mealie:

    docker compose up -d mealie
    
  3. Restart Caddy to get an SSL certificate (details here)

Try it out

See if you can access the mealie web interface.

Troubleshooting

If it doesn't work, see the troubleshooting guide.

Configuration

Create an admin account and at least one user account. Use strong passwords for both.

Official site

Github page