mirror of
https://github.com/invoiceninja/dockerfiles.git
synced 2026-01-06 14:37:26 +01:00
Compare commits
11 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
7a935a0eef | ||
|
|
ff897d568f | ||
|
|
b0bb0ffd25 | ||
|
|
3902b40bc1 | ||
|
|
29e2d93e59 | ||
|
|
b7aea66e62 | ||
|
|
e2db08f207 | ||
|
|
59291d8687 | ||
|
|
6f747207ec | ||
|
|
c2aabd14ac | ||
|
|
07f1e601ab |
57
.github/workflows/build-image-v5.yml
vendored
Normal file
57
.github/workflows/build-image-v5.yml
vendored
Normal file
@@ -0,0 +1,57 @@
|
|||||||
|
name: Build Container Image
|
||||||
|
|
||||||
|
# When its time to do a release do a full cross platform build for all supported
|
||||||
|
# architectures and push all of them to Docker Hub.
|
||||||
|
# Only trigger on semver shaped tags.
|
||||||
|
# Ref: https://github.com/metcalfc/docker-action-examples/blob/main/.github/workflows/release.yml
|
||||||
|
on:
|
||||||
|
pull_request:
|
||||||
|
paths:
|
||||||
|
- "alpine/5/**"
|
||||||
|
push:
|
||||||
|
paths:
|
||||||
|
- "alpine/5/**"
|
||||||
|
branches:
|
||||||
|
- master
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
docker:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
|
||||||
|
- name: Set up QEMU
|
||||||
|
uses: docker/setup-qemu-action@v1
|
||||||
|
with:
|
||||||
|
platforms: all
|
||||||
|
|
||||||
|
- name: Set up Docker Buildx
|
||||||
|
id: buildx
|
||||||
|
uses: docker/setup-buildx-action@v1
|
||||||
|
|
||||||
|
- name: Cache Docker layers
|
||||||
|
uses: actions/cache@v2
|
||||||
|
with:
|
||||||
|
path: /tmp/.buildx-cache
|
||||||
|
key: ${{ runner.os }}-buildx-5-${{ hashFiles('alpine/5/cache_buster') }}
|
||||||
|
restore-keys: |
|
||||||
|
${{ runner.os }}-buildx-5-${{ hashFiles('alpine/5/cache_buster') }}
|
||||||
|
|
||||||
|
- name: Build
|
||||||
|
id: docker_build
|
||||||
|
uses: docker/build-push-action@v2
|
||||||
|
with:
|
||||||
|
builder: ${{ steps.buildx.outputs.name }}
|
||||||
|
context: ./alpine/5/
|
||||||
|
build-args: INVOICENINJA_VERSION=5-stable
|
||||||
|
target: prod
|
||||||
|
platforms: linux/amd64,linux/arm64
|
||||||
|
tags: invoiceninja/invoiceninja:cache
|
||||||
|
cache-from: type=local,src=/tmp/.buildx-cache
|
||||||
|
cache-to: type=local,dest=/tmp/.buildx-cache-new
|
||||||
|
|
||||||
|
- name: Move cache
|
||||||
|
run: |
|
||||||
|
rm -rf /tmp/.buildx-cache
|
||||||
|
mv /tmp/.buildx-cache-new /tmp/.buildx-cache
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
name: Publish Releases to Hub
|
name: Publish Container Image
|
||||||
|
|
||||||
# When its time to do a release do a full cross platform build for all supported
|
# When its time to do a release do a full cross platform build for all supported
|
||||||
# architectures and push all of them to Docker Hub.
|
# architectures and push all of them to Docker Hub.
|
||||||
@@ -44,13 +44,13 @@ jobs:
|
|||||||
id: buildx
|
id: buildx
|
||||||
uses: docker/setup-buildx-action@v1
|
uses: docker/setup-buildx-action@v1
|
||||||
|
|
||||||
# - name: Cache Docker layers
|
- name: Cache Docker layers
|
||||||
# uses: actions/cache@v2
|
uses: actions/cache@v2
|
||||||
# with:
|
with:
|
||||||
# path: /tmp/.buildx-cache
|
path: /tmp/.buildx-cache
|
||||||
# key: ${{ runner.os }}-buildx-${{ github.sha }}
|
key: ${{ runner.os }}-buildx-${{ steps.prep.outputs.major }}-${{ hashFiles('alpine/${{ steps.prep.outputs.major }}/**') }}
|
||||||
# restore-keys: |
|
restore-keys: |
|
||||||
# ${{ runner.os }}-buildx-
|
${{ runner.os }}-buildx-${{ steps.prep.outputs.major }}-${{ hashFiles('alpine/${{ steps.prep.outputs.major }}/**') }}
|
||||||
|
|
||||||
- name: Login to DockerHub
|
- name: Login to DockerHub
|
||||||
if: github.event_name != 'pull_request'
|
if: github.event_name != 'pull_request'
|
||||||
@@ -70,8 +70,8 @@ jobs:
|
|||||||
platforms: linux/amd64,linux/arm64
|
platforms: linux/amd64,linux/arm64
|
||||||
push: ${{ github.event_name != 'pull_request' }}
|
push: ${{ github.event_name != 'pull_request' }}
|
||||||
tags: ${{ steps.prep.outputs.tags }}
|
tags: ${{ steps.prep.outputs.tags }}
|
||||||
cache-from: invoiceninja/invoiceninja:${{ steps.prep.outputs.major }}
|
cache-from: type=local,src=/tmp/.buildx-cache
|
||||||
cache-to: type=inline
|
cache-to: type=local,dest=/tmp/.buildx-cache
|
||||||
|
|
||||||
- name: Image digest
|
- name: Image digest
|
||||||
run: echo ${{ steps.docker_build.outputs.digest }}
|
run: echo ${{ steps.docker_build.outputs.digest }}
|
||||||
@@ -2,6 +2,8 @@
|
|||||||
[](https://hub.docker.com/r/invoiceninja/invoiceninja)
|
[](https://hub.docker.com/r/invoiceninja/invoiceninja)
|
||||||
[](https://hub.docker.com/r/invoiceninja/invoiceninja)
|
[](https://hub.docker.com/r/invoiceninja/invoiceninja)
|
||||||
[](https://artifacthub.io/packages/search?repo=invoiceninja)
|
[](https://artifacthub.io/packages/search?repo=invoiceninja)
|
||||||
|
[](https://github.com/invoiceninja/dockerfiles/actions/workflows/publish-image.yaml) [](https://github.com/invoiceninja/dockerfiles/actions/workflows/build-image-v5.yaml)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# Docker for [Invoice Ninja](https://www.invoiceninja.com/)
|
# Docker for [Invoice Ninja](https://www.invoiceninja.com/)
|
||||||
|
|||||||
@@ -28,7 +28,7 @@ RUN npm install --production \
|
|||||||
&& mv /var/www/app/public $BAK_PUBLIC_PATH
|
&& mv /var/www/app/public $BAK_PUBLIC_PATH
|
||||||
|
|
||||||
# Prepare php image
|
# Prepare php image
|
||||||
FROM php:${PHP_VERSION}-fpm-alpine as prod
|
FROM php:${PHP_VERSION}-fpm-alpine3.13 as prod
|
||||||
ARG INVOICENINJA_VERSION
|
ARG INVOICENINJA_VERSION
|
||||||
ARG BAK_STORAGE_PATH
|
ARG BAK_STORAGE_PATH
|
||||||
ARG BAK_PUBLIC_PATH
|
ARG BAK_PUBLIC_PATH
|
||||||
@@ -88,8 +88,7 @@ WORKDIR /var/www/app
|
|||||||
|
|
||||||
# Do not remove this ENV
|
# Do not remove this ENV
|
||||||
ENV IS_DOCKER true
|
ENV IS_DOCKER true
|
||||||
RUN /usr/local/bin/composer install --no-dev --quiet \
|
RUN /usr/local/bin/composer install --no-dev --quiet
|
||||||
&& rm .env
|
|
||||||
|
|
||||||
# Override the environment settings from projects .env file
|
# Override the environment settings from projects .env file
|
||||||
ENV APP_ENV production
|
ENV APP_ENV production
|
||||||
|
|||||||
1
alpine/5/cache_buster
Normal file
1
alpine/5/cache_buster
Normal file
@@ -0,0 +1 @@
|
|||||||
|
Fri Jul 2 7:33:22 +00 2021
|
||||||
@@ -13,11 +13,11 @@ type: application
|
|||||||
# This is the chart version. This version number should be incremented each time you make changes
|
# This is the chart version. This version number should be incremented each time you make changes
|
||||||
# to the chart and its templates, including the app version.
|
# to the chart and its templates, including the app version.
|
||||||
# Versions are expected to follow Semantic Versioning (https://semver.org/)
|
# Versions are expected to follow Semantic Versioning (https://semver.org/)
|
||||||
version: 0.4.0
|
version: 0.5.1
|
||||||
# This is the version number of the application being deployed. This version number should be
|
# This is the version number of the application being deployed. This version number should be
|
||||||
# incremented each time you make changes to the application. Versions are not expected to
|
# incremented each time you make changes to the application. Versions are not expected to
|
||||||
# follow Semantic Versioning. They should reflect the version the application is using.
|
# follow Semantic Versioning. They should reflect the version the application is using.
|
||||||
appVersion: 5.1.61
|
appVersion: 5.1.64
|
||||||
keywords:
|
keywords:
|
||||||
- invoiceninja
|
- invoiceninja
|
||||||
home: https://invoiceninja.github.io/dockerfiles
|
home: https://invoiceninja.github.io/dockerfiles
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
# Invoice Ninja Helm Chart
|
# Invoice Ninja Helm Chart
|
||||||
|
|
||||||
This helm chart installs a Invoice Ninja and its dependencies into a running
|
This helm chart installs Invoice Ninja (IN) and its dependencies into a running
|
||||||
Kubernetes cluster.
|
Kubernetes cluster.
|
||||||
|
|
||||||
The chart installs the [Invoice Ninja](https://hub.docker.com/r/invoiceninja/invoiceninja) docker image.
|
The chart installs the [Invoice Ninja](https://hub.docker.com/r/invoiceninja/invoiceninja) docker image.
|
||||||
@@ -81,15 +81,20 @@ The following table shows the configuration options for the Invoice Ninja helm c
|
|||||||
| `serviceAccountName` | Name of a service account for the Invoice Ninja pods | `default` |
|
| `serviceAccountName` | Name of a service account for the Invoice Ninja pods | `default` |
|
||||||
| `debug` | Turn on debug mode on Invoice Ninja | `false` |
|
| `debug` | Turn on debug mode on Invoice Ninja | `false` |
|
||||||
| `appKey` | Laravel Application Key | _random 32 character alphanumeric string_ |
|
| `appKey` | Laravel Application Key | _random 32 character alphanumeric string_ |
|
||||||
|
| `userEmail` | Initial user email address | `admin@example.com` |
|
||||||
|
| `userPassword` | Initial user password | `changeme!` |
|
||||||
| `logChannel` | Name of log channel to use | `nil` |
|
| `logChannel` | Name of log channel to use | `nil` |
|
||||||
| `broadcastDriver` | Name of broadcast driver to use | `nil` |
|
| `broadcastDriver` | Name of broadcast driver to use | `nil` |
|
||||||
| `cacheDriver` | Name of cache driver to use | `nil` |
|
| `cacheDriver` | Name of cache driver to use | `nil` |
|
||||||
| `sessionDriver` | Name of session driver to use | `nil` |
|
| `sessionDriver` | Name of session driver to use | `nil` |
|
||||||
| `queueConnection` | Name of queue connection to use | `nil` |
|
| `queueConnection` | Name of queue connection to use | `nil` |
|
||||||
| `snappdf` | Use snappdf instead of Phantom JS PDF generation | `true` |
|
| `snappdf` | Use snappdf instead of Phantom JS PDF generation | `true` |
|
||||||
|
| `mailer` | Name of the mailer to use (log, smtp, etc.) | `log` |
|
||||||
|
| `requireHttps` | Force HTTPS for internal connections to Invoice Ninja (see #349) | `false` |
|
||||||
| `extraEnvVars` | Extra environment variables to be set on Invoice Ninja container | `{}` |
|
| `extraEnvVars` | Extra environment variables to be set on Invoice Ninja container | `{}` |
|
||||||
| `extraEnvVarsCM` | Name of existing ConfigMap containing extra env vars | `nil` |
|
| `extraEnvVarsCM` | Name of existing ConfigMap containing extra env vars | `nil` |
|
||||||
| `extraEnvVarsSecret` | Name of existing Secret containing extra env vars | `nil` |
|
| `extraEnvVarsSecret` | Name of existing Secret containing extra env vars | `nil` |
|
||||||
|
| `trustedProxy` | List of trusted proxies for Invoice Ninja to communicate with the nginx proxy | `'*'` |
|
||||||
|
|
||||||
### Invoice Ninja deployment parameters
|
### Invoice Ninja deployment parameters
|
||||||
|
|
||||||
@@ -236,10 +241,49 @@ The above command sets the number of replicas to 3 for a highly available (HA) s
|
|||||||
|
|
||||||
Alternatively, a YAML file that specifies the values for the parameters can be provided while [installing](https://helm.sh/docs/helm/helm_install/) the chart. For example,
|
Alternatively, a YAML file that specifies the values for the parameters can be provided while [installing](https://helm.sh/docs/helm/helm_install/) the chart. For example,
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
# values.yaml
|
||||||
|
appKey: changeit
|
||||||
|
replicaCount: 3
|
||||||
|
nginx:
|
||||||
|
replicaCount: 3
|
||||||
|
redis:
|
||||||
|
cluster:
|
||||||
|
slaveCount: 3
|
||||||
|
password: changeit
|
||||||
|
mariadb:
|
||||||
|
auth:
|
||||||
|
rootPassword: changeit
|
||||||
|
password: changeit
|
||||||
|
```
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
helm install invoiceninja -f values.yaml invoiceninja/invoiceninja
|
helm install invoiceninja -f values.yaml invoiceninja/invoiceninja
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Setting Environment Variables
|
||||||
|
|
||||||
|
Should you need to inject any environment variables such as those in [here](https://github.com/invoiceninja/dockerfiles/blob/master/env) into the `invoiceninja` container, you can use the `extraEnvVars` option:
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
# ... values.yaml file
|
||||||
|
# In this example, we are setting the SMTP MAIL_HOST to be 'smtp.mailtrap.io'
|
||||||
|
extraEnvVars:
|
||||||
|
- name: MAIL_HOST
|
||||||
|
value: 'smtp.mailtrap.io' # all values must be strings, so other types must be surrounded in quotes
|
||||||
|
```
|
||||||
|
|
||||||
|
Alternatively you can provide the name of an existing `configmap` or `secret` object:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
kubectl create configmap examplemap --from-literal=MAIL_HOST='smtp.mailtrap.io'
|
||||||
|
```
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
# ... values.yaml file
|
||||||
|
extraEnvVarsCM: examplemap
|
||||||
|
```
|
||||||
|
|
||||||
## Upgrading
|
## Upgrading
|
||||||
|
|
||||||
Nothing yet.
|
Nothing yet.
|
||||||
|
|||||||
@@ -59,14 +59,14 @@ Create the name of the service account to use
|
|||||||
Return the proper Storage Class
|
Return the proper Storage Class
|
||||||
*/}}
|
*/}}
|
||||||
{{- define "invoiceninja.public.storageClass" -}}
|
{{- define "invoiceninja.public.storageClass" -}}
|
||||||
{{- include "common.storage.class" (dict "persistence" .Values.persistence "global" .Values.global) -}}
|
{{- include "common.storage.class" (dict "persistence" .Values.persistence.public "global" .Values.global) -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
||||||
{{/*
|
{{/*
|
||||||
Return the proper Storage Class
|
Return the proper Storage Class
|
||||||
*/}}
|
*/}}
|
||||||
{{- define "invoiceninja.storage.storageClass" -}}
|
{{- define "invoiceninja.storage.storageClass" -}}
|
||||||
{{- include "common.storage.class" (dict "persistence" .Values.persistence "global" .Values.global) -}}
|
{{- include "common.storage.class" (dict "persistence" .Values.persistence.storage "global" .Values.global) -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
||||||
{{/*
|
{{/*
|
||||||
|
|||||||
@@ -13,20 +13,25 @@ metadata:
|
|||||||
{{- end }}
|
{{- end }}
|
||||||
data:
|
data:
|
||||||
{{- if .Values.nginx.ingress.enabled }}
|
{{- if .Values.nginx.ingress.enabled }}
|
||||||
|
{{- if .Values.nginx.ingress.tls }}
|
||||||
|
APP_URL: "https://{{ .Values.nginx.ingress.hostname }}"
|
||||||
|
{{- else }}
|
||||||
APP_URL: "http://{{ .Values.nginx.ingress.hostname }}"
|
APP_URL: "http://{{ .Values.nginx.ingress.hostname }}"
|
||||||
|
{{- end }}
|
||||||
{{- else }}
|
{{- else }}
|
||||||
APP_URL: "http://{{ include "common.names.fullname" . }}"
|
APP_URL: "http://{{ include "common.names.fullname" . }}"
|
||||||
{{- end }}
|
{{- end }}
|
||||||
APP_DEBUG: {{ .Values.debug | quote }}
|
APP_DEBUG: {{ .Values.debug | quote }}
|
||||||
DB_HOST1: {{ include "invoiceninja.databaseHost" . | quote }}
|
DB_HOST: {{ include "invoiceninja.databaseHost" . | quote }}
|
||||||
DB_PORT1: {{ include "invoiceninja.databasePort" . | quote }}
|
DB_PORT: {{ include "invoiceninja.databasePort" . | quote }}
|
||||||
DB_USERNAME1: {{ include "invoiceninja.databaseUser" . | quote }}
|
DB_USERNAME: {{ include "invoiceninja.databaseUser" . | quote }}
|
||||||
DB_DATABASE1: {{ include "invoiceninja.databaseName" . | quote }}
|
DB_DATABASE: {{ include "invoiceninja.databaseName" . | quote }}
|
||||||
{{- if .Values.logChannel }}
|
{{- if .Values.logChannel }}
|
||||||
LOG_CHANNEL: {{ .Values.logChannel | quote }}
|
LOG_CHANNEL: {{ .Values.logChannel | quote }}
|
||||||
{{- else }}
|
{{- else }}
|
||||||
LOG_CHANNEL: stderr
|
LOG_CHANNEL: stderr
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
MAIL_MAILER: {{ .Values.mailer | quote }}
|
||||||
{{- if .Values.broadcastDriver }}
|
{{- if .Values.broadcastDriver }}
|
||||||
BROADCAST_DRIVER: {{ .Values.broadcastDriver | quote }}
|
BROADCAST_DRIVER: {{ .Values.broadcastDriver | quote }}
|
||||||
{{- else if or .Values.redis.enabled .Values.externalRedis.host }}
|
{{- else if or .Values.redis.enabled .Values.externalRedis.host }}
|
||||||
@@ -56,3 +61,5 @@ data:
|
|||||||
REDIS_CACHE_CONNECTION: {{ include "invoiceninja.redisCacheConnection" . | quote }}
|
REDIS_CACHE_CONNECTION: {{ include "invoiceninja.redisCacheConnection" . | quote }}
|
||||||
REDIS_QUEUE_CONNECTION: {{ include "invoiceninja.redisQueueConnection" . | quote }}
|
REDIS_QUEUE_CONNECTION: {{ include "invoiceninja.redisQueueConnection" . | quote }}
|
||||||
SESSION_CONNECTION: {{ include "invoiceninja.redisSessionConnection" . | quote }}
|
SESSION_CONNECTION: {{ include "invoiceninja.redisSessionConnection" . | quote }}
|
||||||
|
REQUIRE_HTTPS: {{ .Values.requireHttps | quote }}
|
||||||
|
TRUSTED_PROXIES: {{ .Values.trustedProxies | quote }}
|
||||||
|
|||||||
@@ -63,12 +63,14 @@ spec:
|
|||||||
- -cx
|
- -cx
|
||||||
- |
|
- |
|
||||||
COUNTER=0;
|
COUNTER=0;
|
||||||
while [ $COUNTER -lt 120 ]; do
|
[[ -z "${DB_HOST1}" ]] || DB_HOST="${DB_HOST1}";
|
||||||
if mysqladmin ping -h "$DB_HOST1" -P $DB_PORT1 --silent; then
|
[[ -z "${DB_PORT1}" ]] || DB_PORT="${DB_PORT1}";
|
||||||
|
while [ $COUNTER -lt 120 ]; do
|
||||||
|
if mysqladmin ping -h "$DB_HOST" -P $DB_PORT --silent; then
|
||||||
exit 0;
|
exit 0;
|
||||||
fi;
|
fi;
|
||||||
let COUNTER=COUNTER+1;
|
let COUNTER=COUNTER+1;
|
||||||
echo "Waiting for DB ($DB_HOST1:$DB_PORT1)"
|
echo "Waiting for DB... Trying again in 2s";
|
||||||
sleep 2;
|
sleep 2;
|
||||||
done;
|
done;
|
||||||
echo "Did NOT see a database after 240 secs!";
|
echo "Did NOT see a database after 240 secs!";
|
||||||
@@ -81,6 +83,18 @@ spec:
|
|||||||
envFrom:
|
envFrom:
|
||||||
- configMapRef:
|
- configMapRef:
|
||||||
name: {{ include "common.names.fullname" . }}
|
name: {{ include "common.names.fullname" . }}
|
||||||
|
{{- if .Values.extraEnvVarsCM }}
|
||||||
|
- configMapRef:
|
||||||
|
name: {{ include "common.tplvalues.render" (dict "value" .Values.extraEnvVarsCM "context" $) }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.extraEnvVarsSecret }}
|
||||||
|
- secretRef:
|
||||||
|
name: {{ include "common.tplvalues.render" (dict "value" .Values.extraEnvVarsSecret "context" $) }}
|
||||||
|
{{- end }}
|
||||||
|
env:
|
||||||
|
{{- if .Values.extraEnvVars }}
|
||||||
|
{{- include "common.tplvalues.render" (dict "value" .Values.extraEnvVars "context" $) | nindent 12 }}
|
||||||
|
{{- end }}
|
||||||
{{- if and .Values.podSecurityContext .Values.volumePermissions.enabled (or .Values.persistence.public.enabled .Values.persistence.storage.enabled) }}
|
{{- if and .Values.podSecurityContext .Values.volumePermissions.enabled (or .Values.persistence.public.enabled .Values.persistence.storage.enabled) }}
|
||||||
- name: volume-permissions
|
- name: volume-permissions
|
||||||
image: {{ include "invoiceninja.volumePermissions.image" . }}
|
image: {{ include "invoiceninja.volumePermissions.image" . }}
|
||||||
@@ -148,7 +162,7 @@ spec:
|
|||||||
name: {{ include "common.tplvalues.render" (dict "value" .Values.extraEnvVarsSecret "context" $) }}
|
name: {{ include "common.tplvalues.render" (dict "value" .Values.extraEnvVarsSecret "context" $) }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
env:
|
env:
|
||||||
- name: DB_PASSWORD1
|
- name: DB_PASSWORD
|
||||||
valueFrom:
|
valueFrom:
|
||||||
secretKeyRef:
|
secretKeyRef:
|
||||||
name: {{ include "invoiceninja.databaseSecretName" . }}
|
name: {{ include "invoiceninja.databaseSecretName" . }}
|
||||||
@@ -160,6 +174,10 @@ spec:
|
|||||||
name: {{ include "invoiceninja.redisSecretName" . }}
|
name: {{ include "invoiceninja.redisSecretName" . }}
|
||||||
key: redis-password
|
key: redis-password
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
{{- if .Values.userEmail }}
|
||||||
|
- name: IN_USER_EMAIL
|
||||||
|
value: {{ .Values.userEmail | quote }}
|
||||||
|
{{- end }}
|
||||||
{{- if .Values.extraEnvVars }}
|
{{- if .Values.extraEnvVars }}
|
||||||
{{- include "common.tplvalues.render" (dict "value" .Values.extraEnvVars "context" $) | nindent 12 }}
|
{{- include "common.tplvalues.render" (dict "value" .Values.extraEnvVars "context" $) | nindent 12 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|||||||
@@ -57,4 +57,7 @@ data:
|
|||||||
APP_KEY: {{ .Values.appKey | b64enc | quote }}
|
APP_KEY: {{ .Values.appKey | b64enc | quote }}
|
||||||
{{- else }}
|
{{- else }}
|
||||||
APP_KEY: {{ randAlphaNum 32 | b64enc | quote }}
|
APP_KEY: {{ randAlphaNum 32 | b64enc | quote }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
{{- if .Values.userPassword }}
|
||||||
|
IN_PASSWORD: {{ .Values.userPassword | b64enc | quote }}
|
||||||
|
{{- end }}
|
||||||
|
|||||||
@@ -18,7 +18,7 @@
|
|||||||
image:
|
image:
|
||||||
registry: docker.io
|
registry: docker.io
|
||||||
repository: invoiceninja/invoiceninja
|
repository: invoiceninja/invoiceninja
|
||||||
tag: 5.1.61
|
tag: 5.1.64
|
||||||
## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent'
|
## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent'
|
||||||
## ref: http://kubernetes.io/docs/user-guide/images/#pre-pulling-images
|
## ref: http://kubernetes.io/docs/user-guide/images/#pre-pulling-images
|
||||||
##
|
##
|
||||||
@@ -38,6 +38,16 @@ debug: false
|
|||||||
##
|
##
|
||||||
appKey: ""
|
appKey: ""
|
||||||
|
|
||||||
|
## Email of user to create first run
|
||||||
|
## If not specified, default user email will be "admin@example.com"
|
||||||
|
##
|
||||||
|
userEmail: ""
|
||||||
|
|
||||||
|
## Password of user to create on first run
|
||||||
|
## If not specified, default user password will be "changeme!"
|
||||||
|
##
|
||||||
|
userPassword: ""
|
||||||
|
|
||||||
## Name of log channel to use
|
## Name of log channel to use
|
||||||
##
|
##
|
||||||
logChannel: ""
|
logChannel: ""
|
||||||
@@ -58,10 +68,24 @@ sessionDriver: ""
|
|||||||
##
|
##
|
||||||
queueConnection: ""
|
queueConnection: ""
|
||||||
|
|
||||||
|
## List of trusted proxies for Invoice Ninja to communicate with the nginx proxy
|
||||||
|
##
|
||||||
|
trustedProxies: "*"
|
||||||
|
|
||||||
## Use local or Phantom JS PDF generation
|
## Use local or Phantom JS PDF generation
|
||||||
##
|
##
|
||||||
snappdf: true
|
snappdf: true
|
||||||
|
|
||||||
|
## Name of queue connection to use (use "log" for debug)
|
||||||
|
## Please check the ref below for any other env you may need to define
|
||||||
|
## ref: https://github.com/invoiceninja/invoiceninja/blob/v5-stable/config/mail.php
|
||||||
|
##
|
||||||
|
mailer: log
|
||||||
|
|
||||||
|
## Force HTTPS for all connections to Invoice Ninja
|
||||||
|
##
|
||||||
|
requireHttps: false
|
||||||
|
|
||||||
## String to partially override fullname template (will maintain the release name)
|
## String to partially override fullname template (will maintain the release name)
|
||||||
##
|
##
|
||||||
# nameOverride:
|
# nameOverride:
|
||||||
|
|||||||
Reference in New Issue
Block a user