There are different ways to get Meh up and running. You can use Docker, Docker Compose, or set it up manually on your server.
Meh is available as a Docker image for easy deployment. It's based on the official PHP image and includes everything you need to run Meh.
Images are available on the GitHub Container Registry (GHCR) and Docker Hub.
To start the container use:
docker run --name meh -p 8080:80 -v meh-data:/app/data splitbrain/meh:latest
To run the command line tool use:
docker exec meh /app/meh
Use the command line tool to initialize the database and configure your installation. Configuration can also be done via environment variables.
Docker Compose makes it easy to define and manage your Meh deployment configuration. Here's a minimal example:
services:
meh:
image: splitbrain/meh:latest
ports:
- "8080:80"
volumes:
- ./data:/app/data
restart: unless-stopped
Start the container with:
docker-compose up -d
To run the command line tool use:
docker-compose exec meh /app/meh
Use the command line tool to initialize the database and configure your installation. Configuration can also be done via environment variables.
Of course, you can run the whole thing the classical way.
Clone the repository:
git clone https://github.com/splitbrain/meh.git
cd meh
Install backend dependencies:
cd backend
composer install --no-dev
cd ..
Build the frontend:
cd frontend
npm install
npm run build
cd ..
Point your web server to the public
directory
Use the command line tool to initialize the database and configure your installation. Configuration can also be done via environment variables.
Meh requires URL rewriting to work correctly. There's a .htaccess
file included that handles this for Apache. For other web servers, you need to configure URL rewriting manually.