Com instal·lar la factura Ninja en Ubuntu 16.04

Com instal·lar la factura Ninja en Ubuntu 16.04

Factura Ninja és un programari de codi obert basat en web per a la facturació, pagaments, seguiment de temps i molt més. Podeu crear factures en línia en qüestió de segons, interactuar amb passarel·les de pagaments com Stripe, PayPal, WePay i altres. La factura de Ninja us pot mostrar una visualització en temps real de la factura en format PDF. Podeu canviar fàcilment el logotip de l'empresa a les plantilles. La factura Ninja està basada en PHP, es construeix amb el Marc Laravel i es pot instal·lar a Linux i Windows.

En aquest tutorial, us mostraré com instal·lar Factura Ninja en Ubuntu 16.04. Vaig a utilitzar Nginx com a servidor web i MariaDB com a sistema de bases de dades.

Requisit previ

  • Servidor Ubuntu 16.04.
  • Privilegis fonamentals.

Pas 1 - Instal·leu Nginx

En aquest pas, instal·larem el servidor web Nginx. Connecteu-vos al vostre servidor amb el vostre compte de root de ssh (o inicieu sessió amb un altre usuari i utilitzeu 'sudo-s' per convertir-se en root) i actualitzeu el repositori.

ssh [protegit per correu electrònic]
apt-get update

Instal·leu Nginx amb l'ordre apt següent:

apt-get install-i nginx

Quan finalitzi la instal·lació nginx, inicieu Nginx i afegiu-la per començar a l'arrencada.

systemctl start nginx
systemctl permet nginx

Assegureu-vos que nginx s'estigui executant. Comproveu el port que utilitza nginx, el port del servidor web predeterminat és 80.

netstat -plntu

Nginx instal·lat a l'Ubuntu 16.04

Step 2 - Install and Configure MariaDB Server

After installing Nginx, we need to install the package mariadb-server on the system. It's available in the Ubuntu repository. Install mariadb-server and its dependencies with the command below.

apt-get install-i mariadb-server

Quan finalitzeu la instal·lació, inicieu el servei mariadb i habiliteu-lo quan s'iniciï amb aquestes ordres systemctl.

systemctl restart mysql
systemctl permet mysql

S'ha iniciat MariaDB, ara podeu establir la contrasenya del root per mariadb amb el següent comandament.

instal·lació mysql_secure

Estableix la vostra nova contrasenya de root de MariaDB.

Estableix la contrasenya del root? [I / n] I
Nova contrasenya:
Torneu a introduir la nova contrasenya:
Vols eliminar usuaris anònims? [I / n] I
Voleu desactivar l'inici de sessió de root de forma remota? [I / n] I
Voleu eliminar la base de dades de prova i accedir-hi? [I / n] I
Torneu a carregar les taules de privilegi ara? [I / n] I

A continuació, intenteu connectar amb la shell mysql com a usuari root.

mysql -u root -p
TIPUS DE LA TEVA FONAMENT SEGÜENT

Veureu shell de MySQL quan tot funcioni correctament.

Recomanat:  deepin 15.4 llançat, amb Link de descàrrega i miralls

Now we need to create a new database and a new user for Invoice Ninja. I will create a new database named 'ninjadb', un nou usuari'ninja'amb contrasenya'aqwe123'. Please choose a different and secure password for your installation!

Crea'ls amb la consulta de mysql a continuació. Creeu una nova base de dades, creeu un nou usuari i contrasenya, concediu una base de dades al nou usuari amb una contrasenya.

crear una base de dades ninjadb;
create user [email protected] identified by 'aqwe123';
grant all privileges on ninjadb.* to [email protected] identified by 'aqwe123';
privilegis de flush;

Instal·leu i configureu MariaDB per a la factura de Ninja

S'ha instal·lat MariaDB i es va crear una nova base de dades i un usuari per a la factura Ninja.

Step 3 - Install and Configure PHP7.0-FPM

La factura Ninja està basada en PHP, de manera que necessitem instal·lar PHP al sistema. Utilitzarem PHP7.0-FPM per a aquesta instal·lació de Factura Ninja.

Instal·leu PHP7.0-FPM i altres extensions PHP necessàries per la factura Ninja amb el següent comandament.

apt-get install -i php7.0-php php7.0-gd php7.0-xml php7.0-mysql php7.0-zip php7.0-mbstring php7.0-mcrypt php7.0-curl php7.0-gmp

Després de la instal·lació, aneu al directori de configuració de PHP i editeu el fitxer php.ini.

cd / etc / php / 7.0 /
vim fpm / php.ini

Descomenta la línia CGI següent i canvieu el valor a 0.

cgi.fix_pathinfo = 0

Guardar i sortir.

Editeu el fitxer php.ini al directori cli.

vim cli / php.ini

Descomenta la línia CGI següent i canvieu el valor a 0.

cgi.fix_pathinfo = 0

Guardar i sortir.

A continuació, inicieu PHP7.0-FPM i habiliteu-lo per iniciar-lo des de l'arrencada.

systemctl restart php7.0-fpm
systemctl habilita php7.0-fpm

Per defecte, PHP7.0-FPM s'executa amb un fitxer socket, comprova-ho amb el següent comandament i veureu el fitxer socket PHP com es mostra a la captura de pantalla.

netstat -pl

Configureu PHP7.0-FPM en Ubuntu 16.04

PHP7.0-FPM i totes les extensions necessàries per la factura Ninja s'instal·len.

Step 4 - Install and Configure Invoice Ninja

En aquest pas, descarregarem i configurarem Factura Ninja. Primer, instal·leu descomprimir al vostre sistema.

apt-get install-i unzip

Go to the '/var/www' directori i descarregueu el codi font de la factura Ninja amb l'ordre wget.

cd / var / www /
wget https://download.invoiceninja.com/ninja-v3.1.0.zip

Extract the Invoice Ninja zip file and go to the 'ninja' directory.

descomprimeix ninja-v3.1.0.zip
cd ninja /

For the Laravel project, we need to install the composer dependency manager for PHP. It's available in the Ubuntu repository, so we can install it with the apt command.

Recomanat:  Com instal·lar Piwik amb Nginx a Ubuntu 15.10

apt-get install i compositor

A continuació, instal·leu les dependències de Factura Ninja amb el comandament del compositor a continuació.

composer install --no-dev -o

  • --no-dev : Desactiva la instal·lació dels paquets require-dev
  • -o : Optimitzeu l'autocargador durant l'expulsió de l'autocargador

Quan s'hagi completat la instal·lació de la dependència, copieu el fitxer .env i editeu-lo amb vim.

cp .env.example .env
vim .env

Canvieu el valor de la configuració de la base de dades a continuació.

DB_DATABASE = ninjadb
DB_USERNAME = ninja
DB_PASSWORD = aqwe123

Guardar i sortir.

Configuració de l'entorn per a la factura Ninja

Next, edit the database configuration in the config directory.

vim config/database.php

We are using MariaDB/MySQL database, go to the MySQL line 55.

'database' => env('DB_DATABASE', 'ninjadb'),
'username' => env('DB_USERNAME', 'ninja'),
'password' => env('DB_PASSWORD', 'aqwe123'),

Replace the password with the one that you have set for the ninja user!

Guardar i sortir.

Invoice Ninja Database Configuration

All configuration files are edited. Next, migrate the database with the command below.

php artisan migrate

You will be asked to run the command, type 'yes' and press Enter.

Invoice Ninja Migrate Database

Next, seed the database with all records.

php artisan db:seed

Escriviu 'yes' and press Enter to confirm.

Invoice Ninja Seed Tables

Generate a new application key for the Laravel project Invoice Ninja.

php artisan key:generate

You will see the application key.

Edit the app.php file with vim.

vim config/app.php

Go to the APP_KEY line 85 and paste the key we generated.

'key' => env('APP_KEY', 'base64:0o5QLWbNeDCNer064+600Hl8oJ20OPCIymadKJQ1RGo='),

Guardar i sortir.

Finally, change the owner of '/var/www/ninja' directory to 'www-data' user and group.

cd / var / www /
chown -R www-data:www-data ninja/

Invoice Ninja is configured and ready for the installation.

Step 5 - Configure SSL and Virtual Host

In this step, we will generate an SSL Certificate file with the OpenSSL command and create new virtual host configuration for Invoice Ninja. If you are on a live server, you can use a free SSL from Let's Encrypt instead of generating a self-signed SSL cert with OpenSSL.

Create a new 'cert' directory for the SSL files.

mkdir-p / etc / nginx / cert /

Run the openssl command below to generate the certificate files.

openssl req -new -x509 -days 365 -nodes -out /etc/nginx/cert/ninja.crt -keyout /etc/nginx/cert/ninja.key

Change the permission of the certificate files to '600'.

chmod 600 / etc / nginx / cert / *

Generate SSL Certificate for Invoice Ninja

Next, go to the Nginx directory and create a new virtual host configuration file named 'ninja'.

Recomanat:  Revisió d'aplicació de l'identificador de trucades de Toost

cd / etc / nginx /
vim sites-available/ninja

Paste virtual host configuration below.

server {
# Your Domain Name - hakase-labs.co
listen      80;
server_name ninja.co www.ninja.co;
# Rewrite redirect to https
add_header Strict-Transport-Security max-age=2592000;
rewrite ^ https://$server_name$request_uri? permanent;
}
server {
# Your Domain Name - hakase-labs.co
listen      443 default;
server_name ninja.co www.ninja.co;
# Enable SSL for Invoice Ninja
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;
# Invoice Ninja web root files
root /var/www/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:/run/php/php7.0-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;
}
}

Guardar i sortir.

Enable the ninja virtual host and test the Nginx configuration, make sure there is no error.

ln -s /etc/nginx/sites-available/ninja /etc/nginx/sites-enabled/
nginx -t

Now restart the nginx web server.

systemctl reinicia nginx

Invoice Ninja Virtual Host Installed

The Invoice Ninja virtual host configuration is finished.

Step 6 - Finishing the Installation and Testing

Open your web browser and type in the Invoice Ninja URL: ninja.co. You will be redirected to the https connection and setup page.

Invoice Ninja Installation

Type in the Application Settings, Database Connection, Email Settings, User Details and check the Invoice Ninja TOS.

Invoice Ninja Installation Configuration setup

Feu clic a "Presentar' and you will be redirected to the login page of Invoice Ninja.

Type in your email and password, then press 'Inici de sessió'.

You will see the Invoice Ninja Dashboard.

Invoice Ninja Admin Dashboard

Invoice Ninja Settings Page.

Invoice Ninja Setting Page

Invoice Ninja Installed with Nginx and MariaDB on Ubuntu 16.04.

Referència

font

anuncis

Deixa un comentari

GTranslate Your license is inactive or expired, please subscribe again!