Alternative to the official container images.
Sources are available on GitHub.
x.y.z-invoiceninjaA.B.C tags the x.y.z container image version, embedded with
the Invoice Ninja A.B.C version.edge-invoiceninjaA.B.C tags the container image built from the last repository
commit, embedded with the Invoice Ninja A.B.C version.Tags aliases :
x.y-invoiceninjaA.B.C aliases the latest patch version of the container image x.y
major+minor version, embedded with the Invoice Ninja A.B.C version;x-invoiceninjaA.B.C aliases the latest minor+patch version of the container image
x major version, embedded with the Invoice Ninja A.B.C version;x.y.z aliases the x.y.z container image version embedded with the latest
Invoice Ninja version (Note: only the latest container image version gets updated);x.y aliases the latest patch version of the container image x.y major+minor
version, embedded with the latest Invoice Ninja release (Note: only the latest container
image major+minor version gets updated);x aliases the latest minor+patch version of the container image x major
version, embedded with the latest Invoice Ninja version (Note: only the latest container
image major version gets updated);invoiceninjaA.B aliases the latest container image version, embedded with the latest
patch version of the Invoice Ninja A.B major+minor version;invoiceninjaA aliases the latest container image version, embedded with the latest
minor+patch version of the Invoice Ninja A major version;latest aliases the latest x.y.z-invoiceninjaA.B.C tag;edge-invoiceninjaA.B aliases the container image built from the last repository
commit, embedded with the latest patch version of the Invoice Ninja A.B major+minor
version;edge-invoiceninjaA aliases the container image built from the last repository
commit, embedded with the latest minor+patch version of the Invoice Ninja A major
version.edge aliases the latest edge-invoiceninjaA.B.C tag;First, you'll need to generate an application key :
docker run --rm -it anthochamp/invoiceninja php artisan key:generate --show
Then, execute the following command :
docker run -p 1234:80 anthochamp/invoiceninja
And test it by opening a browser to http://localhost:1234.
As an alternative to passing sensitive information via environment variables, __FILE may be appended to any of the listed environment variables below, causing the initialization script to load the values for those variables from files present in the container.
In particular, this can be used to load values from Docker secrets stored in /run/secrets/<secret_name> files. For example : IN_INITIAL_ACCOUNT_PASSWORD__FILE=/run/secrets/initial_password.
Default: empty
Default: empty
References:
As an alternative to passing sensitive information via environment variables, __FILE may be appended to any of the listed environment variables below, causing the initialization script to load the values for those variables from files present in the container.
In particular, this can be used to load values from Docker secrets stored in /run/secrets/<secret_name> files. For example : MAIL_PASSWORD=/run/secrets/mail_password.
References:
Default: Invoice Ninja
Default: false
Default: http://localhost
Default: UTC
Refer to PHP documentation for possible values.
Default: en
Default: empty
Must be generated using the following command :
docker run --rm -it anthochamp/invoiceninja php artisan key:generate --show
References:
Default: log
| Driver | Description | Parameters |
|---|---|---|
ably | Ably | See Third party > Ably |
log | Should only be used for local development and debugging. | |
pusher | Pusher Channels | see Third party > Pusher Channels |
redis | Redis | REDIS_BROADCAST_CONNECTION |
Default: default
Selects a Redis configuration for broadcasting.
Default: file
| Driver | Description | Parameters |
|---|---|---|
database | Uses a database table for caching. The default database connection configuration specified in DB_CONNECTION will be used. | CACHE_PREFIX, DB_CONNECTION |
dynamodb | Uses a AWS DynamoDB table for caching. | CACHE_PREFIX, DYNAMODB_CACHE_TABLE, and Third party > Amazon DynamoDB |
file | Uses local files stored in framework/cache/data for caching. | |
memcached | Uses a memcached instance for caching. | CACHE_PREFIX, and Third party > memcached |
redis | Uses a Redis instance for caching. | CACHE_PREFIX, REDIS_CACHE_CONNECTION |
Default: cache
Default: cache
Selects a Redis configuration for caching.
Default: ${APP_NAME}_cache_ (with the slug version of APP_NAME)
References:
Available database connection configurations:
| Configuration | Description | Parameters |
|---|---|---|
mysql | MySQL / MariaDB database connection | DB_HOST, DB_PORT, DB_DATABASE, DB_USERNAME, DB_PASSWORD |
pgsql | Postgres database connection | DB_HOST, DB_PORT, DB_DATABASE, DB_USERNAME, DB_PASSWORD |
sqlite | SQLite database connection | DB_DATABASE |
sqlsrv | SQL Server database connection | DB_HOST, DB_PORT, DB_DATABASE, DB_USERNAME, DB_PASSWORD |
Default: mysql
Selects the default database configuration.
Default: 127.0.0.1
Default:
| Configuration | Default value |
|---|---|
mysql | 3306 |
pgsql | 5432 |
sqlsrv | 1433 |
Default:
| Configuration | Default value |
|---|---|
mysql, pgsql and sqlsrv | invoiceninja |
sqlite | database.sqlite |
Default: invoiceninja
Default: empty
References:
Default: public
Available disk configurations:
| Configuration | Description | Parameters |
|---|---|---|
public | Stores in app/public directory | |
s3 | Amazon S3 | See Third party > Amazon S3 |
r2 | Cloudflare R2 | Third party > Cloudflare R2 |
gcs | Google Cloud Storage | Third party > Google Cloud Storage |
References:
Default: 12
This value should depend on the allocated resource for the application.
References:
Default: empty
References:
Available logging channel configurations :
| Configuration | Description | Parameters |
|---|---|---|
invoiceninja | Logs records into logs/invoiceninja.log with a 7 days retention policy | LOG_LEVEL |
invoiceninja-reminders | Logs records into logs/invoiceninja-reminders.log with a 90 days retention policy | LOG_LEVEL |
stack | Multi-channel (configured for single) | |
single | Logs records into logs/laravel.log | LOG_LEVEL |
daily | Logs records into logs/laravel.log (rotated daily) with a 14 days retention policy | LOG_LEVEL |
slack | Logs records to a Slack account using Slack Webhooks. The Bot name is Laravel Log. | LOG_LEVEL, LOG_SLACK_WEBHOOK_URL |
papertrail | Logs records to a remote Syslogd server. | LOG_LEVEL, PAPERTRAIL_URL, PAPERTRAIL_PORTL |
stderr | Logs records into the stderr PHP stream with an optional formatter. | LOG_LEVEL, LOG_STDERR_FORMATTER |
syslog | Logs records to the syslog. | LOG_LEVEL |
errorlog | Logs records into the stderr PHP stream. | LOG_LEVEL |
null | No logs | |
graylog | Logs records to a Gelf server. | GRAYLOG_SERVER |
Default: errorlog
Sets the default logging channel configuration.
Default:
| Configuration | Default value |
|---|---|
invoiceninja | debug |
invoiceninja-reminders | debug |
stack | - |
single | debug |
daily | debug |
slack | critical |
papertrail | debug |
stderr | debug |
syslog | debug |
errorlog | debug |
null | - |
graylog | debug (hard-coded) |
Available log levels follows RFC 5424 specification : emergency, alert, critical, error, warning, notice, info and debug.
Default: empty
Relevant only for the slack configuration.
Slack Webhook URL.
Default: empty
Relevant only for the papertrail configuration.
Either IP/hostname or a path to a unix socket (PAPERTRAIL_PORT must be 0 then).
Default: empty
Relevant only for the papertrail configuration.
Port number, or 0 if PAPERTRAIL_URL is a unix socket.
Default: empty
Relevant only for the stderr configuration.
The fully qualified name of the monolog formatter class (eg. Monolog\Formatter\LineFormatter). Be aware of the \ character in shell, it is used for escaping. The actual environment value should be Monolog\\Formatter\\LineFormatter.
Default: 127.0.0.1
Relevant only for the graylog configuration.
IP/hostname of the Gelf server. Other transport parameters are hard-coded : UDP on remote port 12201.
References:
Available mailer configurations :
| Configuration | Description | Parameters |
|---|---|---|
smtp | SMTP server | MAIL_HOST, MAIL_PORT, MAIL_ENCRYPTION, MAIL_USERNAME, MAIL_PASSWORD, MAIL_EHLO_DOMAIN, MAIL_VERIFY_PEER |
ses | Amazon SES | See Third party > Amazon SES |
mailgun | Mailgun | See Third party > Mailgun |
brevo | Brevo | See Third party > Brevo |
postmark | Postmark | See Third party > Postmark |
log | Dry-send to log | MAIL_LOG_CHANNEL |
gmail | GMail | See Third party > Google Mail |
office365 | Office 365 | See Third party > Microsoft Office 365 |
failover | Use smtp configuration by default or log on smtp failure |
Default: failover
Default: smtp.example.com
Relevant only for the smtp configuration.
Default: 587
Relevant only for the smtp configuration.
Default: tls
Relevant only for the smtp configuration.
Default: empty
Relevant only for the smtp configuration.
Default: empty
Relevant only for the smtp configuration.
Default: empty
Relevant only for the smtp configuration.
Default: true
Relevant only for the smtp configuration.
Default: empty
Relevant only for the log configuration.
Default: [email protected]
Default: value of APP_NAME
References:
Available queues configurations :
| Configuration | Description | Parameters |
|---|---|---|
sync | Synchronous execution in the foreground (should only be used for development) | |
database | Use the configured Database | |
sqs | Amazon SQS | See Third party > Amazon SQS |
redis | Redis | REDIS_QUEUE_CONNECTION, REDIS_QUEUE, and Third party > Redis |
Default: database
Default: default
Selects the redis configuration group for queues (see Redis).
Default: {default}
If your Redis queue connection uses a Redis Cluster, your queue names must contain a key hash tag. This is required in order to ensure all of the Redis keys for a given queue are placed into the same hash slot.
References:
Default: file
Available session drivers:
Default: 120
Specify the number of minutes that you wish the session to be allowed to remain idle before it expires.
Default: empty
Relevant only for the database and redis drivers.
Default: empty
Relevant only for the dynamodb, memcached and redis drivers.
Cache store that should be used for these drivers.
Default: $APP_NAME_session (APP_NAME is slugged)
Default: empty
Determine which domains the cookie is available to.
Default: false
If this option is true, session cookies will only be sent back to the server if the browser has a HTTPS connection. This will keep the cookie from being sent to you when it can't be done securely.
Default: lax
Either lax, strict, none or empty.
Determines how your cookies behave when cross-site requests take place, and can be used to mitigate CSRF attacks.
References:
Default: empty
References:
Default: empty
Default: empty
Default: us-east-1
References:
Default: empty
References:
Default: empty
Default: empty
Public URL of the S3 bucket.
Default: empty
Default: false
References:
Default: us-east-1
References:
Default: https://sqs.us-east-1.amazonaws.com/your-account-id
Default: empty
Default: default
References:
Default: empty
Default: empty
Default: empty
Default: empty
Default: empty
Default: empty
Default: empty
Default: false
References:
Default: empty
Default: empty
Default: false
Default: empty
Default: empty
Default: empty
Default: empty
Default: empty
References:
Default: empty
Default: empty
References:
Default: empty
Default: empty
Default: api.mailgun.net
Default: empty
Default: empty
Takes precedence over MAIL_FROM_ADDRESS if defined.
Default: empty
Takes precedence over MAIL_FROM_NAME if defined.
References:
Default: empty
Default: empty
Default: empty
References:
Default: empty
**D
Content type
Image
Digest
sha256:e007cb2a0…
Size
833.3 MB
Last updated
12 days ago
docker pull anthochamp/invoiceninja