From bf1475441d288441a1a5638bd6b50486d2d99e8b Mon Sep 17 00:00:00 2001 From: Andras Bacsai Date: Mon, 26 Feb 2024 12:38:15 +0100 Subject: [PATCH] Update service stop message and fix sidebar alignment --- app/Livewire/Project/Service/Navbar.php | 2 +- .../proxy/dynamic-configurations.blade.php | 2 +- templates/compose/invoice-ninja.yaml | 100 ++++++++++++++++++ 3 files changed, 102 insertions(+), 2 deletions(-) create mode 100644 templates/compose/invoice-ninja.yaml diff --git a/app/Livewire/Project/Service/Navbar.php b/app/Livewire/Project/Service/Navbar.php index fda86321b..5640084b9 100644 --- a/app/Livewire/Project/Service/Navbar.php +++ b/app/Livewire/Project/Service/Navbar.php @@ -64,7 +64,7 @@ class Navbar extends Component StopService::run($this->service); $this->service->refresh(); if ($forceCleanup) { - $this->dispatch('success', 'Force cleanup service.'); + $this->dispatch('success', 'Containers cleaned up.'); } else { $this->dispatch('success', 'Service stopped.'); } diff --git a/resources/views/livewire/server/proxy/dynamic-configurations.blade.php b/resources/views/livewire/server/proxy/dynamic-configurations.blade.php index 5bcfb9cbc..cb788dda4 100644 --- a/resources/views/livewire/server/proxy/dynamic-configurations.blade.php +++ b/resources/views/livewire/server/proxy/dynamic-configurations.blade.php @@ -1,7 +1,7 @@
-
+
@if ($server->isFunctional())
diff --git a/templates/compose/invoice-ninja.yaml b/templates/compose/invoice-ninja.yaml new file mode 100644 index 000000000..92f6d82fa --- /dev/null +++ b/templates/compose/invoice-ninja.yaml @@ -0,0 +1,100 @@ +# ignore: true +# documentation: https://invoiceninja.github.io/selfhost.html +# slogan: The leading open-source invoicing platform +# tags: invoicing, billing, accounting, finance, self-hosted + +services: + invoice-ninja: + image: invoiceninja/invoiceninja:5 + environment: + - SERVICE_FQDN_INVOICENINJA + - APP_ENV=production + - APP_URL=${SERVICE_FQDN_INVOICENINJA} + - APP_KEY=${SERVICE_BASE64_INVOICENINJA} + - APP_DEBUG=false + - REQUIRE_HTTPS=false + - PHANTOMJS_PDF_GENERATION=false + - PDF_GENERATOR=snappdf + - TRUSTED_PROXIES=* + - QUEUE_CONNECTION=database + - DB_HOST=mysql + - DB_PORT=3306 + - DB_DATABASE=${MYSQL_DATABASE:-invoice_ninja} + - DB_USERNAME=${SERVICE_USER_MYSQL} + - DB_PASSWORD=${SERVICE_PASSWORD_MYSQL} + volumes: + - invoice-ninja-public:/var/www/app/public + - invoice-ninja-storage:/var/www/app/storage + - type: bind + source: ./php.ini + target: /usr/local/etc/php/php.ini + content: | + session.auto_start = Off + short_open_tag = Off + + error_reporting = E_ALL & ~E_NOTICE & ~E_WARNING & ~E_STRICT & ~E_DEPRECATED + + ; opcache.enable=1 + ; opcache.preload=/srv/www/invoiceninja/current/preload.php + ; opcache.preload_user=www-data + + ; ; The OPcache shared memory storage size. + ; opcache.max_accelerated_files=300000 + ; opcache.validate_timestamps=1 + ; opcache.revalidate_freq=30 + ; opcache.jit_buffer_size=256M + ; opcache.jit=1205 + ; opcache.memory_consumption=1024M + + + post_max_size = 60M + upload_max_filesize = 50M + memory_limit=512M + - type: bind + source: ./php-cli.ini + target: /usr/local/etc/php/php-cli.ini + content: | + session.auto_start = Off + short_open_tag = Off + + error_reporting = E_ALL & ~E_NOTICE & ~E_WARNING & ~E_STRICT & ~E_DEPRECATED + + ; opcache.enable_cli=1 + ; opcache.fast_shutdown=1 + ; opcache.memory_consumption=256 + ; opcache.interned_strings_buffer=8 + ; opcache.max_accelerated_files=4000 + ; opcache.revalidate_freq=60 + ; # http://symfony.com/doc/current/performance.html + ; realpath_cache_size = 4096K + ; realpath_cache_ttl = 600 + + memory_limit = 2G + post_max_size = 60M + upload_max_filesize = 50M + depends_on: + mysql: + condition: service_healthy + mysql: + image: mariadb:lts + environment: + - MYSQL_USER=${SERVICE_USER_MYSQL} + - MYSQL_PASSWORD=${SERVICE_PASSWORD_MYSQL} + - MYSQL_DATABASE=${MYSQL_DATABASE:-invoice_ninja} + - MYSQL_ROOT_PASSWORD=${SERVICE_PASSWORD_MYSQLROOT} + healthcheck: + test: + [ + "CMD", + "mysqladmin", + "ping", + "-h", + "localhost", + "-uroot", + "-p${SERVICE_PASSWORD_MYSQLROOT}", + ] + interval: 5s + timeout: 20s + retries: 10 + volumes: + - invoice-ninja-mysql-data:/var/lib/mysql