← All guides
Invoice Ninja
Invoice Ninja is a self-hostable invoicing, billing and payments platform for freelancers and small businesses, officially distributed as Docker images for quick, reproducible deployment.
This guide is synthesized from Invoice Ninja's own official documentation, linked above — always cross-check exact package/version names there before running these commands on a production server, since distro and project versions move over time.
1Clone the official dockerfiles repository
git clone https://github.com/invoiceninja/dockerfiles.git -b debiancd dockerfiles/debian2Generate an application key
docker run --rm -it invoiceninja/invoiceninja-debian php artisan key:generate --show3Configure environment variables
Edit the .env file and set at least APP_URL, the generated APP_KEY, and a temporary admin account for first boot.
Set IN_USER_EMAIL and IN_PASSWORD for the initial account, then remove them from .env after setup completes.
4Start the stack
docker compose up -dDomains ending in .test are needed for local PDF generation to work correctly.