GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

So installieren Sie Invoice Ninja auf CentOS 7

In diesem Tutorial zeigen wir Ihnen, wie Sie Invoice Ninja auf Ihrem CentOS 7 installieren und konfigurieren. Für diejenigen unter Ihnen, die es nicht wussten, Invoice Ninja ist kostenlos und Open Source webbasierte Anwendungssoftware, die für Rechnungsstellung, Zahlungen, Zeiterfassung und vieles mehr verwendet werden kann. Es ist die beste Lösung für die Rechnungsstellung und Abrechnung von Kunden. Sie können Rechnungen einfach und in Sekundenschnelle online erstellen und versenden. Mit Invoice Ninja können Sie Ihre eigene benutzerdefinierte Rechnung und zeigen Sie eine Live-Rechnung als PDF-Datei an.

Dieser Artikel geht davon aus, dass Sie zumindest über Grundkenntnisse in Linux verfügen, wissen, wie man die Shell verwendet, und vor allem, dass Sie Ihre Website auf Ihrem eigenen VPS hosten. Die Installation ist recht einfach und setzt Sie voraus im Root-Konto ausgeführt werden, wenn nicht, müssen Sie möglicherweise 'sudo hinzufügen ‘ zu den Befehlen, um Root-Rechte zu erhalten. Ich zeige Ihnen die schrittweise Installation von Invoice Ninja auf einem CentOS 7-Server.

Ninjas Funktionen in Rechnung stellen

  • Erstellen Sie Arbeitsaufgaben und verfolgen Sie die Zeit
  • Erstellen Sie Rechnungen online in Sekunden
  • Rechnungen per E-Mail versenden und online bezahlt werden
  • Responsives Design für Mobilgeräte
  • Integrieren Sie mehr als 45 Zahlungsgateways
  • 10 frische Designs für Rechnungsvorlagen
  • Live-Rechnungserstellung im PDF-Format ansehen
  • Fügen Sie Ihr Firmenlogo zu Rechnungen hinzu
  • Angebote werden in Rechnungen umgewandelt
  • Automatische Abrechnung und wiederkehrende Rechnungen
  • Mehrere Steuereinstellungen
  • Mehrere Währungen werden unterstützt
  • Kundenportal zum Anzeigen von Rechnungen
  • Benachrichtigungen, wenn Rechnungen bezahlt werden
  • Fälligkeitsdaten für Rechnungszahlungen festlegen
  • Ausgaben importieren und Anbieter einrichten

Invoice Ninja auf CentOS 7 installieren

Schritt 1. Beginnen wir damit, sicherzustellen, dass Ihr System auf dem neuesten Stand ist.

yum clean all
yum -y install epel-release
yum -y update

Schritt 2. LEMP-Server installieren.

Ein CentOS 7 LEMP-Stack-Server ist erforderlich. Wenn Sie kein LEMP installiert haben, können Sie unserer Anleitung hier folgen. Installieren Sie auch die erforderlichen PHP-Module:

yum install install php70w-fpm php70w-cli php70w-pear php70w-gd php70w-xml php70w-curl php70w-gmp php70w-pdo php70w-mysql php70w-zip php70w-mbstring php70w-mcrypt

Sobald die Installation abgeschlossen ist, müssen Sie die Konfigurationsdatei php.ini ändern:

nano /etc/php.ini

Ändern Sie die folgende Zeile:

cgi.fix_pathinfo=0

Schritt 3. MariaDB für Invoice Ninja konfigurieren.

Standardmäßig ist MariaDB nicht gehärtet. Sie können MariaDB mit mysql_secure_installation sichern Skript. Sie sollten jeden Schritt sorgfältig lesen und befolgen, der ein Root-Passwort festlegt, anonyme Benutzer entfernt, Remote-Root-Login verbietet und die Testdatenbank und den Zugriff auf die sichere MariaDB entfernt:

mysql_secure_installation

Konfiguriere es so:

- Set root password? [Y/n] y
- Remove anonymous users? [Y/n] y
- Disallow root login remotely? [Y/n] y
- Remove test database and access to it? [Y/n] y
- Reload privilege tables now? [Y/n] y

Als Nächstes müssen wir uns bei der MariaDB-Konsole anmelden und eine Datenbank für den Invoice Ninja erstellen. Führen Sie den folgenden Befehl aus:

mysql -u root -p

Dadurch werden Sie zur Eingabe eines Passworts aufgefordert, geben Sie also Ihr MariaDB-Root-Passwort ein und drücken Sie die Eingabetaste. Sobald Sie sich bei Ihrem Datenbankserver angemeldet haben, müssen Sie eine Datenbank für erstellen Rechnungs-Ninja-Installation:

MariaDB [(none)]> CREATE DATABASE ninja_db;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON ninja_db.* TO 'ninja'@'localhost' IDENTIFIED BY 'password';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> \q

Schritt 4. PHP-FPM konfigurieren.

Sie müssen den PHP-FPM-Pool für Nginx-Benutzer konfigurieren:

nano /etc/php-fpm.d/www.conf

Ändern Sie die folgenden Zeilen:

user = nginx
group = nginx
listen = /var/run/php/php-fpm.sock
listen.owner = nginx
listen.group = nginx
listen.mode = 0660
env[HOSTNAME] = $HOSTNAME
env[PATH] = /usr/local/bin:/usr/bin:/bin
env[TMP] = /tmp
env[TMPDIR] = /tmp
env[TEMP] = /tmp

Speichern Sie die Datei und beenden Sie den Texteditor.

Als nächstes müssen Sie ein neues Verzeichnis für die PHP-Sitzung und die Socket-Datei erstellen:

mkdir -p /var/lib/php/session
mkdir -p /var/run/php/
chown -R nginx:nginx /var/lib/php/session/
chown -R nginx:nginx /var/run/php/

Starten Sie als Nächstes PHP-FPM und aktivieren Sie es mit den folgenden Befehlen, um beim Booten zu starten:

systemctl start php-fpm
systemctl enable php-fpm

Schritt 5. Installation von Invoice Ninja.

Als Erstes müssen Sie auf die Download-Seite von Invoice Ninja gehen und die neueste stabile Version von Invoice Ninja herunterladen:

cd /var/www/html/
git clone https://github.com/hillelcoren/invoice-ninja.git ninja

Sie müssen Composer installieren:

curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/bin --filename=composer

Installieren Sie als Nächstes alle Invoice Ninja-Abhängigkeiten mit Composer:

cd /var/www/html/ninja
composer install --no-dev -o

Sobald die Installation abgeschlossen ist, benennen Sie die .env-Datei um und nehmen Sie einige Änderungen vor:

mv .env.example .env
nano .env

Ändern Sie die Datenbankwerte entsprechend Ihrer Datenbank:

DB_DATABASE=ninja_db
DB_USERNAME=ninja
DB_PASSWORD=Y0urPa55w0rd

Speichern Sie die Datei und beenden Sie den Texteditor. Bearbeiten Sie als Nächstes die Datenbankkonfiguration im Konfigurationsverzeichnis:

nano config/database.php

Ändern Sie die folgenden Zeilen:

'database'  => env('DB_DATABASE', 'ninja_db'),
'username'  => env('DB_USERNAME', 'ninja'),
'password'  => env('DB_PASSWORD', 'Y0urPa55w0rd'),

Speichern Sie die Datei und beenden Sie den Texteditor und bereiten Sie die Datenbank mit dem folgenden Befehl vor:

php artisan migrate

Sie werden aufgefordert, den Befehl auszuführen, geben Sie „yes“ ein und drücken Sie die Eingabetaste.

Füllen Sie als nächstes die Datenbank mit allen Datensätzen, wie unten gezeigt:

php artisan db:seed

Führen Sie den folgenden Befehl aus, um den Anwendungsschlüssel zu generieren, und notieren Sie sich diesen Anwendungsschlüssel:

php artisan key:generate

Bearbeiten Sie als Nächstes die app.php Datei mit einem Nano-Texteditor:

nano config/app.php

Fügen Sie den Schlüssel wie unten gezeigt hinzu:

'key' => env('APP_KEY', 'y0urGenerated Key'),

Speichern und schließen Sie die Datei und ändern Sie auch einige Ordnerberechtigungen:

chown -R nginx:nginx /var/www/html/ninja/

Schritt 6. Konfigurieren Sie Nginx für Invoice Ninja.

Erstellen Sie ein SSL-Zertifikat und erstellen Sie eine neue virtuelle Hostkonfiguration für Invoice Ninja:

mkdir -p /etc/nginx/cert/openssl req -new -x509 -days 365 -nodes -out /etc/nginx/cert/ninja.crt -keyout /etc/nginx/cert/ninja.keychmod 600 /etc/nginx/cert/*

Erstellen Sie als Nächstes eine neue virtuelle Host-Konfigurationsdatei in /etc/nginx/ Verzeichnis:

nano /etc/nginx/conf.d/ninja.conf

Fügen Sie die folgenden Zeilen hinzu:

server {
    listen  80;
    server_name idroot.us;
    add_header Strict-Transport-Security max-age=2592000;
    rewrite ^ https://$server_name$request_uri? permanent;
}

server {
    listen  443 default;
    server_name 192.168.15.23;
    ssl on;
    ssl_certificate     /etc/nginx/cert/ninja.crt;
    ssl_certificate_key /etc/nginx/cert/ninja.key;
    ssl_session_timeout 5m;
    ssl_ciphers  'AES128+EECDH:AES128+EDH:!aNULL';
    ssl_protocols  TLSv1 TLSv1.1 TLSv1.2;
    ssl_prefer_server_ciphers on;
    root /var/www/html/ninja/public;
    index index.html index.htm index.php;
    charset utf-8;
    location / {
    try_files $uri $uri/ /index.php?$query_string;
       }

    location = /favicon.ico { access_log off; log_not_found off; }
    location = /robots.txt  { access_log off; log_not_found off; }

    # Access and Error Log for Invoice Ninja
    access_log  /var/log/nginx/ininja.access.log;
    error_log   /var/log/nginx/ininja.error.log;

    sendfile off;

    # Handle PHP Applications
    location ~ \.php$ {
    fastcgi_split_path_info ^(.+\.php)(/.+)$;
    fastcgi_pass unix:/var/run/php/php-fpm.sock;
    fastcgi_index index.php;
    include fastcgi_params;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_intercept_errors off;
    fastcgi_buffer_size 16k;
    fastcgi_buffers 4 16k;
    }

    location ~ /\.ht {
       deny all;
       }
    }

Speichern und schließen Sie die Datei. Starten Sie den Nginx-Dienst neu, damit die Änderungen wirksam werden:

systemctl restart nginx

Schritt 7. Konfigurieren Sie FirewallD Invoice Ninja.

Bevor Sie auf die Weboberfläche von Invoice Ninja zugreifen, müssen Sie den HTTP- und HTTPS-Dienst über die Firewall zulassen:

firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add-service=https
firewall-cmd --reload

Schritt 8. Zugriff auf Invoice Ninja.

Invoice Ninja ist standardmäßig auf HTTP-Port 80 verfügbar. Öffnen Sie Ihren bevorzugten Browser und navigieren Sie zu http://your-domain.com/ oder http://your-server-ip und führen Sie die erforderlichen Schritte aus, um die Installation abzuschließen.

Herzlichen Glückwunsch! Sie haben Invoice Ninja erfolgreich installiert. Vielen Dank, dass Sie dieses Tutorial zur Installation von Invoice Ninja auf einem CentOS 7-System verwendet haben. Für zusätzliche Hilfe oder nützliche Informationen empfehlen wir Ihnen, die offizielle Invoice Ninja-Website zu besuchen .


Cent OS
  1. So installieren Sie PHP 7, 7.2 und 7.3 auf CentOS 7

  2. So installieren Sie Java 11 und 12 unter CentOS 7

  3. So installieren Sie Wine 4.0 unter CentOS 7

  4. So installieren Sie Invoice Ninja unter Ubuntu 18.04

  5. So installieren Sie Invoice Ninja unter Debian 9

So installieren Sie R unter CentOS 8

So installieren Sie Invoice Ninja unter Ubuntu 16.04

So installieren Sie Invoice Ninja auf CentOS 7

So installieren Sie Invoice Ninja unter Ubuntu 20.04

So installieren Sie Invoice Ninja auf CentOS 8

So installieren Sie Invoice Ninja unter Debian 10