diff --git a/apps/invoice-ninja/config.json b/apps/invoice-ninja/config.json index a72320c7..afb9c331 100644 --- a/apps/invoice-ninja/config.json +++ b/apps/invoice-ninja/config.json @@ -6,7 +6,7 @@ "exposable": true, "id": "invoice-ninja", "tipi_version": 1, - "version": "1.25", + "version": "5.8.54", "categories": ["finance"], "description": "Invoice Ninja is an invoicing application which makes sending invoices and receiving payments simple and easy. Our latest version is a clean slate rewrite of our popular invoicing application which builds on the existing feature set and adds a wide range of features and enhancements the community has asked for.", "short_desc": "Invoices, Expenses and Tasks built with Laravel, Flutter and React.", @@ -38,5 +38,8 @@ "env_variable": "INVOICE_NINJA_APP_KEY" } ], - "supported_architectures": ["amd64"] + "supported_architectures": [ + "arm64", + "amd64" + ] } diff --git a/apps/invoice-ninja/docker-compose.yml b/apps/invoice-ninja/docker-compose.yml index aec7cb73..4b0d0db3 100644 --- a/apps/invoice-ninja/docker-compose.yml +++ b/apps/invoice-ninja/docker-compose.yml @@ -2,9 +2,39 @@ version: "3.9" services: invoice-ninja: - image: nginx:1.25 + image: invoiceninja/invoiceninja:5.8.54 container_name: invoice-ninja restart: unless-stopped + user: 1500:1500 + environment: + - IN_USER_EMAIL=${INVOICE_NINJA_USER_MAIL} + - IN_PASSWORD=${INVOICE_NINJA_USER_PASSWORD} + - APP_URL=http://invoice-ninja + - APP_KEY=${INVOICE_NINJA_APP_KEY} + - APP_CIPHER=AES-256-CBC + - DB_HOST=invoice-ninja-db + - DB_PORT=3306 + - DB_DATABASE=ninja + - DB_USERNAME=ninja + - DB_PASSWORD=ninja + - REQUIRE_HTTPS=false + - QUEUE_CONNECTION=database + - IS_DOCKER=TRUE + volumes: + - ${APP_DATA_DIR}/data/public:/var/www/app/public:rw,delegated + - ${APP_DATA_DIR}/data/storage:/var/www/app/storage:rw,delegated + - ${APP_DATA_DIR}/data/php/php.ini:/usr/local/etc/php/php.ini:ro + - ${APP_DATA_DIR}/data/php/php-cli.ini:/usr/local/etc/php/php-cli.ini:ro + depends_on: + invoice-ninja-db: + condition: service_healthy + networks: + - tipi_main_network + + invoice-ninja-web: + image: nginx:1.25 + container_name: invoice-ninja-web + restart: unless-stopped volumes: - ${APP_DATA_DIR}/data/nginx/invoice-ninja.conf:/etc/nginx/conf.d/default.conf:ro - ${APP_DATA_DIR}/data/public:/var/www/app/public:ro @@ -41,36 +71,6 @@ services: traefik.http.routers.invoice-ninja-local.service: invoice-ninja traefik.http.routers.invoice-ninja-local.tls: true - invoice-ninja-server: - image: invoiceninja/invoiceninja:5.8.54 - container_name: invoice-ninja-server - restart: unless-stopped - user: 1500:1500 - environment: - - IN_USER_EMAIL=${INVOICE_NINJA_USER_MAIL} - - IN_PASSWORD=${INVOICE_NINJA_USER_PASSWORD} - - APP_URL=http://invoice-ninja - - APP_KEY=${INVOICE_NINJA_APP_KEY} - - APP_CIPHER=AES-256-CBC - - DB_HOST=invoice-ninja-db - - DB_PORT=3306 - - DB_DATABASE=ninja - - DB_USERNAME=ninja - - DB_PASSWORD=ninja - - REQUIRE_HTTPS=false - - QUEUE_CONNECTION=database - - IS_DOCKER=TRUE - volumes: - - ${APP_DATA_DIR}/data/public:/var/www/app/public:rw,delegated - - ${APP_DATA_DIR}/data/storage:/var/www/app/storage:rw,delegated - - ${APP_DATA_DIR}/data/php/php.ini:/usr/local/etc/php/php.ini:ro - - ${APP_DATA_DIR}/data/php/php-cli.ini:/usr/local/etc/php/php-cli.ini:ro - depends_on: - invoice-ninja-db: - condition: service_healthy - networks: - - tipi_main_network - invoice-ninja-db: image: mariadb:10.4 container_name: invoice-ninja-db @@ -88,7 +88,14 @@ services: invoice-ninja-init: condition: service_completed_successfully healthcheck: - test: [ "CMD", "healthcheck.sh", "--su-mysql", "--connect", "--innodb_initialized" ] + test: + [ + "CMD", + "healthcheck.sh", + "--su-mysql", + "--connect", + "--innodb_initialized", + ] interval: 10s timeout: 5s retries: 5