Kā instalēt Invoice Ninja Ubuntu 16.04

Ievads

Invoice Ninja ir bezmaksas atvērtā koda tīmekļa lietojumprogramma, ko var izmantot rēķinu izrakstīšanai, maksājumiem, laika uzskaitei un daudz kam citam. Tas ir labākais risinājums klientu rēķinu izrakstīšanai un norēķiniem. Jūs varat viegli izveidot un nosūtīt rēķinus tiešsaistē dažu sekunžu laikā. Invoice Ninja ļauj izveidot pielāgotus rēķinus un rādīt reāllaika rēķinus kā PDF failu.

Šajā apmācībā es paskaidrošu, kā instalēt Invoice Ninja Ubuntu 16.04 serverī.

Priekšnoteikumi

  • Ubuntu 16.04 servera gadījums ar instalētu 2 GB RAM.
  • Sudo lietotājs ar root tiesībām.
  • Jums būs jāzina sava servera instances galvenā IP adrese. Šajā apmācībā es izmantošu 192.168.0.227.

1. darbība: atjauniniet sistēmu

Pirms pakotņu instalēšanas Ubuntu servera instancē ieteicams atjaunināt sistēmu. Piesakieties savā serverī, izmantojot SSH, kā sudo lietotājs un palaidiet šo komandu:

sudo apt-get update -y
sudo apt-get upgrade -y
sudo shutdown -r now

2. darbība: instalējiet LEMP skursteni

Pirms darba sākšanas serverī būs jākonfigurē LEMP (Nginx, MariaDB un PHP) steks.

Vispirms instalējiet Nginx un MariaDB ar šādu komandu:

sudo apt-get install nginx mariadb-server -y

Kad instalēšana ir pabeigta, palaidiet Nginx un MariaDB pakalpojumus un iespējojiet tos sāknēšanas laikā:

sudo systemctl start nginx
sudo systemctl enable nginx
sudo systemctl start mysql
sudo systemctl enable mysql

Tālāk jums būs nepieciešams PHP 7 un PHP-FPM, lai instalētu Invoice Ninja.

Jūs varat instalēt PHP-FPM un citus nepieciešamos PHP paplašinājumus ar šādu komandu:

sudo apt-get install php7.0-fpm php7.0-gd php7.0-xml php7.0-mysql php7.0-zip php7.0-curl php7.0-gmp php7.0-mbstring php7.0-mcrypt

Kad instalēšana ir pabeigta, jums būs jāmaina php.inikonfigurācijas fails:

sudo nano /etc/php/7.0/fpm/php.ini

Mainiet šo rindu:

cgi.fix_pathinfo=0

Saglabājiet un aizveriet failu.

3. darbība: konfigurējiet datu bāzi

Pēc noklusējuma MariaDB instalācija nav aizsargāta. Jums būs nepieciešams to nodrošināt. To var izdarīt, palaižot mysql_secure_installation script.

sudo mysql_secure_installation

Atbildiet uz visiem jautājumiem, kā parādīts zemāk:

Set root password? [Y/n] Y
New password:
Re-enter new password:
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

Kad viss ir izdarīts, izveidojiet savienojumu, izmantojot MySQL apvalku ar šādu komandu:

mysql -u root -p

Ievadiet savu root paroli un nospiediet "enter", jūs redzēsit MySQL (MariaDB) apvalku.

Izveidojiet jaunu datu bāzi un jaunu lietotāju rēķinam Ninja.

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

4. darbība: konfigurējiet PHP-FPM

Konfigurējiet PHP-FPM pūlu Nginx lietotājam:

sudo nano /etc/php/7.0/fpm/pool.d/www-data.conf

Pievienojiet šādas rindas:

[www-data]
user = www-data
group = www-data
listen = /var/run/php-fpm-www-data.sock
listen.owner = www-data
listen.group = www-data
listen.mode = 0666
pm = ondemand
pm.max_children = 5
pm.process_idle_timeout = 10s
pm.max_requests = 200
chdir = /

Kad esat pabeidzis, saglabājiet un aizveriet failu, pēc tam restartējiet PHP-FPM, lai lietotu šīs izmaiņas.

systemctl restart php7.0-fpm

5. darbība: lejupielādējiet un konfigurējiet Rēķinu Ninja

Varat lejupielādēt jaunāko stabilo Invoice Ninja versiju no GitHub repozitorija, izmantojot šādu komandu:

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

Jums būs jāinstalē arī Composer, PHP atkarības pārvaldnieks. Varat to instalēt ar šādu komandu:

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

Pēc tam instalējiet visas rēķina Ninja atkarības, izmantojot composerkomandu, kā parādīts tālāk:

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

Kad instalēšana ir pabeigta, pārdēvējiet .envfailu un veiciet dažas izmaiņas.

sudo mv .env.example .env
sudo nano .env

Mainiet līnijas, kā parādīts zemāk:

DB_DATABASE=ninja_db
DB_USERNAME=ninja
DB_PASSWORD=password

Kad esat pabeidzis, saglabājiet failu un pēc tam palaidiet šo komandu, lai sagatavotu datu bāzi:

sudo php artisan migrate

Jums tiks piedāvāts palaist komandu, ierakstiet "jā" un nospiediet "enter".

Pēc tam ievietojiet datubāzi ar ierakstiem, kā parādīts tālāk:

sudo php artisan db:seed

Ierakstiet "jā" un nospiediet "enter".

Pēc tam mainiet /var/www/html/ninjadirektorija īpašumtiesības :

sudo chown -R www-data:www-data /var/www/html/ninja/

6. darbība. Nginx konfigurēšana rēķinu ninjai

Pēc tam jums būs jāizveido SSL sertifikāts un jauna virtuālā saimniekdatora konfigurācija pakalpojumam Invoice Ninja.

Vispirms izveidojiet SSL direktoriju:

sudo mkdir -p /etc/nginx/cert/

Pēc tam ģenerējiet SSL sertifikātu ar šādu komandu:

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

Piešķiriet sertifikāta failam atbilstošas ​​atļaujas.

sudo chmod 600 /etc/nginx/cert/*

Izveidojiet jaunu virtuālā resursdatora konfigurācijas failu /etc/nginx/direktorijā.

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

Pievienojiet šādas rindas:

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

server {
    listen  443 default;
    server_name 192.168.0.227;
    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-fpm-www-data.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;
       }
    }

Saglabājiet un aizveriet failu. Pēc tam iespējojiet virtuālo resursdatoru ar šādu komandu.

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

Visbeidzot, restartējiet Nginx tīmekļa serveri.

sudo systemctl restart nginx

7. darbība. Piekļūstiet rēķinam Ninja

Pirms piekļūstat Invoice Ninja tīmekļa saskarnei, jums būs jāatļauj HTTP un HTTPS pakalpojumi, izmantojot UFW ugunsmūri. Lai atvērtu šos portus, izpildiet šādas komandas:

sudo ufw allow 80/tcp
sudo ufw allow 443/tcp

Visbeidzot atveriet savu tīmekļa pārlūkprogrammu un piekļūstiet URL https://192.168.0.227. Pēc tam varat veikt nepieciešamās darbības, lai pabeigtu instalēšanu.

Apsveicam! Mēs esam veiksmīgi instalējuši Invoice Ninja ar Nginx un MariaDB Ubuntu 16.04 serverī.


Instalējiet Plesk operētājsistēmā CentOS 7

Instalējiet Plesk operētājsistēmā CentOS 7

Vai izmantojat citu sistēmu? Plesk ir patentēts tīmekļa mitinātāja vadības panelis, kas ļauj lietotājiem administrēt savas personīgās un/vai klientu vietnes, datu bāzes

Iestatiet Cacti vietnē Debian Jessie

Iestatiet Cacti vietnē Debian Jessie

Ievads Cacti ir atvērtā koda uzraudzības un grafiku veidošanas rīks, kas pilnībā ir balstīts uz RRD datiem. Izmantojot Cacti, varat pārraudzīt gandrīz jebkura veida ierīces

Instalējiet Lets Encrypt SSL WordPress lietotnē ar vienu klikšķi

Instalējiet Lets Encrypt SSL WordPress lietotnē ar vienu klikšķi

Ievads Lets Encrypt ir sertifikācijas iestādes pakalpojums, kas piedāvā bezmaksas TLS/SSL sertifikātus. Instalēšanas procesu vienkāršo Certbot,

Kā iestatīt Tekkit Classic serveri Ubuntu 16.10

Kā iestatīt Tekkit Classic serveri Ubuntu 16.10

Vai izmantojat citu sistēmu? Kas ir Tekkit Classic? Tekkit Classic ir modifikācija spēlei, kuru visi zina un mīl; Minecraft. Tajā ir daži no ver

Iestatiet iRedMail vietnē Debian Wheezy

Iestatiet iRedMail vietnē Debian Wheezy

Vai izmantojat citu sistēmu? Šī apmācība parādīs, kā instalēt grupas programmu iRedMail jaunā Debian Wheezy instalācijā. Jums vajadzētu izmantot servi

Jekyll emuāra izveide Ubuntu 16.04

Jekyll emuāra izveide Ubuntu 16.04

Vai izmantojat citu sistēmu? Jekyll ir lieliska alternatīva WordPress emuāru rakstīšanai vai satura kopīgošanai. Tam nav nepieciešamas nekādas datu bāzes, un tas ir ļoti vienkārši

Kā iestatīt neuzraudzītus jauninājumus Debian 9 (Stretch)

Kā iestatīt neuzraudzītus jauninājumus Debian 9 (Stretch)

Vai izmantojat citu sistēmu? Ja iegādājaties Debian serveri, jums vienmēr ir jābūt jaunākajiem drošības ielāpiem un atjauninājumiem neatkarīgi no tā, vai jūs guļat vai ne.

Kā instalēt un konfigurēt PHP 7.0 vai PHP 7.1 Ubuntu 16.04

Kā instalēt un konfigurēt PHP 7.0 vai PHP 7.1 Ubuntu 16.04

PHP un saistītās pakotnes ir visbiežāk izmantotie komponenti, izvietojot tīmekļa serveri. Šajā rakstā mēs uzzināsim, kā iestatīt PHP 7.0 vai PHP 7.1 o

Kā instalēt Squid starpniekserveri CentOS

Kā instalēt Squid starpniekserveri CentOS

Squid ir populāra bezmaksas Linux programma, kas ļauj izveidot pāradresācijas tīmekļa starpniekserveri. Šajā rokasgrāmatā jūs redzēsit, kā instalēt Squid uz CentOS, lai jūs pārvērstu

Kā instalēt Lighttpd (LLMP Stack) operētājsistēmā CentOS 6

Kā instalēt Lighttpd (LLMP Stack) operētājsistēmā CentOS 6

Ievads Lighttpd ir Apache dakša, kuras mērķis ir daudz mazāk resursietilpīgs. Tas ir viegls, tāpēc arī tā nosaukums ir diezgan vienkārši lietojams. Instalēšana

Trīs bezmaksas servera vadības paneļi (ātrā instalēšana)

Trīs bezmaksas servera vadības paneļi (ātrā instalēšana)

1. Virtualmin/Webmin Virtualmin ir jaudīgs un elastīgs tīmekļa mitināšanas vadības panelis Linux un UNIX sistēmām, pamatojoties uz labi zināmo atvērtā pirmkoda tīmekļa bāzi

Yii lietojumprogrammas iestatīšana Ubuntu 14.04

Yii lietojumprogrammas iestatīšana Ubuntu 14.04

Yii ir PHP ietvars, kas ļauj ātrāk un vienkāršāk izstrādāt lietojumprogrammas. Yii instalēšana Ubuntu ir vienkārša, jo jūs to uzzināsit precīzi

Ekrāna izmantošana Ubuntu 14.04

Ekrāna izmantošana Ubuntu 14.04

Ekrāns ir lietojumprogramma, kas ļauj vairākkārt izmantot termināļa sesijas vienā logā. Tas ļauj simulēt vairākus termināļa logus, kur tas ma

Iestatiet savu DNS serveri vietnē Debian/Ubuntu

Iestatiet savu DNS serveri vietnē Debian/Ubuntu

Šajā apmācībā ir paskaidrots, kā iestatīt DNS serveri, izmantojot Bind9 uz Debian vai Ubuntu. Visā rakstā attiecīgi aizstājiet savu-domēna-nosaukums.com. plkst

Logrotate izmantošana žurnālfailu pārvaldībai

Logrotate izmantošana žurnālfailu pārvaldībai

Ievads Logrotate ir Linux utilīta, kas vienkāršo žurnālfailu administrēšanu. Tas parasti darbojas reizi dienā, izmantojot cron uzdevumu, un pārvalda žurnālu bāzi

Icinga2 modificēšana, lai izmantotu galveno/klienta modeli operētājsistēmā CentOS 6 vai CentOS 7

Icinga2 modificēšana, lai izmantotu galveno/klienta modeli operētājsistēmā CentOS 6 vai CentOS 7

Icinga2 ir spēcīga uzraudzības sistēma, un, ja to izmanto galvenā klienta modelī, tā var aizstāt vajadzību pēc NRPE balstītām uzraudzības pārbaudēm. Meistars-klients

Iestatiet Red5 Media Server operētājsistēmā Ubuntu 16.04

Iestatiet Red5 Media Server operētājsistēmā Ubuntu 16.04

Vai izmantojat citu sistēmu? Red5 ir atvērtā pirmkoda multivides serveris, kas ieviests Java un ļauj palaist Flash vairāku lietotāju lietojumprogrammas, piemēram, tiešraides straumēšanu.

Kompilējiet un instalējiet Nginx ar PageSpeed ​​moduli operētājsistēmā Debian 8

Kompilējiet un instalējiet Nginx ar PageSpeed ​​moduli operētājsistēmā Debian 8

Šajā rakstā mēs redzēsim, kā apkopot un instalēt Nginx galveno līniju no oficiālajiem Nginx avotiem ar PageSpeed ​​moduli, kas ļauj t

Kā instalēt Apache Cassandra 3.11.x operētājsistēmā Ubuntu 16.04 LTS

Kā instalēt Apache Cassandra 3.11.x operētājsistēmā Ubuntu 16.04 LTS

Vai izmantojat citu sistēmu? Apache Cassandra ir bezmaksas un atvērtā koda NoSQL datu bāzes pārvaldības sistēma, kas ir izstrādāta, lai nodrošinātu mērogojamību, hig.

Kā instalēt Apache Cassandra 3.11.x operētājsistēmā CentOS 7

Kā instalēt Apache Cassandra 3.11.x operētājsistēmā CentOS 7

Vai izmantojat citu sistēmu? Apache Cassandra ir bezmaksas un atvērtā koda NoSQL datu bāzes pārvaldības sistēma, kas ir izstrādāta, lai nodrošinātu mērogojamību, hig.

Mašīnu pieaugums: AI reālās pasaules lietojumi

Mašīnu pieaugums: AI reālās pasaules lietojumi

Mākslīgais intelekts nav nākotnē, tas ir šeit, tagadnē. Šajā emuārā lasiet, kā mākslīgā intelekta lietojumprogrammas ir ietekmējušas dažādas nozares.

DDOS uzbrukumi: īss pārskats

DDOS uzbrukumi: īss pārskats

Vai arī jūs esat DDOS uzbrukumu upuris un esat neizpratnē par profilakses metodēm? Izlasiet šo rakstu, lai atrisinātu savus jautājumus.

Vai esat kādreiz domājis, kā hakeri pelna naudu?

Vai esat kādreiz domājis, kā hakeri pelna naudu?

Iespējams, esat dzirdējuši, ka hakeri pelna daudz naudas, bet vai esat kādreiz domājuši, kā viņi nopelna šādu naudu? pārrunāsim.

Google revolucionāri izgudrojumi, kas atvieglos jūsu dzīvi.

Google revolucionāri izgudrojumi, kas atvieglos jūsu dzīvi.

Vai vēlaties redzēt revolucionārus Google izgudrojumus un to, kā šie izgudrojumi mainīja katra cilvēka dzīvi mūsdienās? Pēc tam lasiet emuārā, lai redzētu Google izgudrojumus.

Piektdiena: kas notika ar AI vadītām automašīnām?

Piektdiena: kas notika ar AI vadītām automašīnām?

Pašpiedziņas automobiļu koncepcija izbraukt uz ceļiem ar mākslīgā intelekta palīdzību ir mūsu sapnis jau kādu laiku. Bet, neskatoties uz vairākiem solījumiem, tie nekur nav redzami. Lasiet šo emuāru, lai uzzinātu vairāk…

Tehnoloģiskā singularitāte: cilvēces civilizācijas tāla nākotne?

Tehnoloģiskā singularitāte: cilvēces civilizācijas tāla nākotne?

Zinātnei strauji attīstoties, pārņemot lielu daļu mūsu pūļu, palielinās arī risks pakļaut sevi neizskaidrojamai singularitātei. Izlasiet, ko singularitāte varētu nozīmēt mums.

Datu glabāšanas evolūcija – infografika

Datu glabāšanas evolūcija – infografika

Datu uzglabāšanas metodes ir attīstījušās kopš datu dzimšanas. Šajā emuārā ir aprakstīta datu uzglabāšanas attīstība, pamatojoties uz infografiku.

Lielo datu atsauces arhitektūras slāņu funkcijas

Lielo datu atsauces arhitektūras slāņu funkcijas

Lasiet emuāru, lai vienkāršākā veidā uzzinātu dažādus lielo datu arhitektūras slāņus un to funkcijas.

6 brīnišķīgas priekšrocības, ko sniedz viedo mājas ierīču izmantošana mūsu dzīvē

6 brīnišķīgas priekšrocības, ko sniedz viedo mājas ierīču izmantošana mūsu dzīvē

Šajā digitālajā pasaulē viedās mājas ierīces ir kļuvušas par būtisku dzīves sastāvdaļu. Šeit ir daži pārsteidzoši viedo mājas ierīču ieguvumi, lai padarītu mūsu dzīvi dzīves vērtu un vienkāršāku.

MacOS Catalina 10.15.4 papildinājuma atjauninājums rada vairāk problēmu nekā to risināšana

MacOS Catalina 10.15.4 papildinājuma atjauninājums rada vairāk problēmu nekā to risināšana

Nesen Apple izlaida macOS Catalina 10.15.4 papildinājuma atjauninājumu, lai novērstu problēmas, taču šķiet, ka atjauninājums rada vairāk problēmu, kas izraisa Mac datoru bloķēšanu. Izlasiet šo rakstu, lai uzzinātu vairāk