This setup uses Docker and Docker Compose. If you do not have Docker yet, see Docker Setup and Docker Compose.
Note: The original invoiceninja/invoiceninja image (master branch) is deprecated. Use the new Debian-based image invoiceninja/invoiceninja-debian for new deployments.
Create a docker-compose.yml file:
services:
db:
image: mariadb:11
environment:
MYSQL_DATABASE: invoiceninja
MYSQL_USER: invoiceninja
MYSQL_PASSWORD: change-me
MYSQL_ROOT_PASSWORD: change-me
volumes:
- db_data:/var/lib/mysql
app:
image: invoiceninja/invoiceninja-debian:latest
environment:
DB_HOST: db
DB_DATABASE: invoiceninja
DB_USERNAME: invoiceninja
DB_PASSWORD: change-me
APP_URL: http://localhost:8083
ports:
- "8083:80"
depends_on:
- db
volumes:
db_data:
Start the stack:
docker compose up -d
Then open http://localhost:8083 and finish the initial setup.
Deploying Invoice Ninja in containers for production? Our consulting covers:
Get expert help: office@linux-server-admin.com | Contact Page