Kuinka asentaa Invoice Ninja Ubuntuun 16.04

Johdanto

Invoice Ninja on ilmainen ja avoimen lähdekoodin verkkopohjainen sovellus, jota voidaan käyttää laskutukseen, maksuihin, ajan seurantaan ja paljon muuta. Se on paras ratkaisu asiakkaiden laskutukseen ja laskutukseen. Voit helposti luoda ja lähettää laskuja verkossa muutamassa sekunnissa. Invoice Ninja antaa sinun luoda mukautettuja laskuja ja näyttää reaaliaikaiset laskut PDF-tiedostona.

Tässä opetusohjelmassa selitän kuinka Invoice Ninja asennetaan Ubuntu 16.04 -palvelimelle.

Edellytykset

  • Ubuntu 16.04 -palvelinesiintymä, jossa on asennettuna 2 Gt RAM-muistia.
  • Sudo-käyttäjä, jolla on pääkäyttäjän oikeudet.
  • Sinun on tiedettävä palvelimesi pää-IP-osoite. Tässä opetusohjelmassa käytän 192.168.0.227.

Vaihe 1: Päivitä järjestelmä

Ennen kuin asennat paketteja Ubuntu-palvelinesiintymään, on suositeltavaa päivittää järjestelmä. Kirjaudu palvelimellesi SSH:n kautta sudo-käyttäjänä ja suorita seuraava komento:

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

Vaihe 2: Asenna LEMP-pino

Ennen kuin aloitat, sinun on määritettävä LEMP-pino (Nginx, MariaDB ja PHP) palvelimellesi.

Asenna ensin Nginx ja MariaDB seuraavalla komennolla:

sudo apt-get install nginx mariadb-server -y

Kun asennus on valmis, käynnistä Nginx- ja MariaDB-palvelut ja anna niiden käynnistyä käynnistyksen yhteydessä:

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

Seuraavaksi tarvitset PHP 7:n ja PHP-FPM:n Invoice Ninja -asennukseen.

Voit asentaa PHP-FPM:n ja muut tarvittavat PHP-laajennukset seuraavalla komennolla:

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

Kun asennus on valmis, sinun on muutettava php.iniasetustiedostoa:

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

Muuta seuraava rivi:

cgi.fix_pathinfo=0

Tallenna ja sulje tiedosto.

Vaihe 3: Määritä tietokanta

Oletusarvoisesti MariaDB-asennusta ei ole suojattu. Sinun on varmistettava se. Voit tehdä tämän juoksemalla mysql_secure_installation script.

sudo mysql_secure_installation

Vastaa kaikkiin kysymyksiin alla olevan kuvan mukaisesti:

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

Kun kaikki on valmis, muodosta yhteys MySQL-kuoren avulla seuraavalla komennolla:

mysql -u root -p

Anna root-salasanasi ja paina "enter", näet MySQL (MariaDB) -kuoren.

Luo uusi tietokanta ja uusi käyttäjä Invoice Ninjalle.

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

Vaihe 4: Määritä PHP-FPM

Määritä PHP-FPM-varasto Nginx-käyttäjälle:

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

Lisää seuraavat rivit:

[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 = /

Tallenna ja sulje tiedosto, kun olet valmis, ja käynnistä PHP-FPM uudelleen ottaaksesi nämä muutokset käyttöön.

systemctl restart php7.0-fpm

Vaihe 5: Lataa ja määritä Invoice Ninja

Voit ladata Invoice Ninjan uusimman vakaan version GitHub-arkistosta seuraavalla komennolla:

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

Sinun on myös asennettava Composer, PHP:n riippuvuushallinta. Voit asentaa sen seuraavalla komennolla:

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

Asenna seuraavaksi kaikki Invoice Ninja -riippuvuudet käyttämällä composeralla näkyvää komentoa:

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

Kun asennus on valmis, nimeä .envtiedosto uudelleen ja tee joitain muutoksia.

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

Muuta rivit alla olevan kuvan mukaisesti:

DB_DATABASE=ninja_db
DB_USERNAME=ninja
DB_PASSWORD=password

Kun olet valmis, tallenna tiedosto ja valmistele tietokanta suorittamalla seuraava komento:

sudo php artisan migrate

Sinua kehotetaan suorittamaan komento, kirjoita "yes" ja paina "enter".

Siirrä seuraavaksi tietokantaan tietueet alla olevan kuvan mukaisesti:

sudo php artisan db:seed

Kirjoita "yes" ja paina "enter".

Vaihda seuraavaksi /var/www/html/ninjahakemiston omistajuus :

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

Vaihe 6: Määritä Nginx Invoice Ninjalle

Seuraavaksi sinun on luotava SSL-varmenne ja uusi virtuaalisen isäntäkokoonpano Invoice Ninjalle.

Luo ensin hakemisto SSL:lle:

sudo mkdir -p /etc/nginx/cert/

Luo seuraavaksi SSL-varmenne seuraavalla komennolla:

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

Anna oikeat käyttöoikeudet varmennetiedostolle.

sudo chmod 600 /etc/nginx/cert/*

Luo uusi virtuaalisen isännän määritystiedosto /etc/nginx/hakemistoon.

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

Lisää seuraavat rivit:

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;
       }
    }

Tallenna ja sulje tiedosto. Ota sitten virtuaalinen isäntä käyttöön seuraavalla komennolla.

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

Lopuksi käynnistä Nginx-verkkopalvelin uudelleen.

sudo systemctl restart nginx

Vaihe 7: Käytä Invoice Ninjaa

Ennen kuin käytät Invoice Ninja -verkkokäyttöliittymää, sinun on sallittava HTTP- ja HTTPS-palvelut UFW-palomuurin kautta. Avaa nämä portit suorittamalla seuraavat komennot:

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

Avaa lopuksi verkkoselain ja käytä URL-osoitetta https://192.168.0.227. Tämän jälkeen voit suorittaa tarvittavat vaiheet asennuksen viimeistelemiseksi.

Onnittelut! Olemme onnistuneesti asentaneet Invoice Ninjan Nginxin ja MariaDB:n kanssa Ubuntu 16.04 -palvelimelle.


Asenna Plesk CentOS 7:ään

Asenna Plesk CentOS 7:ään

Käytätkö erilaista järjestelmää? Plesk on patentoitu verkkoisäntäohjauspaneeli, jonka avulla käyttäjät voivat hallita henkilökohtaisia ​​ja/tai asiakkaidensa verkkosivustoja, tietokantoja

Asenna Cacti Debian Jessielle

Asenna Cacti Debian Jessielle

Johdanto Cacti on avoimen lähdekoodin seuranta- ja grafiikkatyökalu, joka perustuu täysin RRD-tietoihin. Cactin kautta voit seurata lähes minkä tahansa tyyppisiä laitteita

Asenna Lets Encrypt SSL One-Click WordPress -sovellukseen

Asenna Lets Encrypt SSL One-Click WordPress -sovellukseen

Johdanto Lets Encrypt on varmenteen myöntäjäpalvelu, joka tarjoaa ilmaisia ​​TLS/SSL-varmenteita. Certbot yksinkertaistaa asennusprosessia,

Tekkit Classic -palvelimen määrittäminen Ubuntu 16.10:ssä

Tekkit Classic -palvelimen määrittäminen Ubuntu 16.10:ssä

Käytätkö erilaista järjestelmää? Mikä on Tekkit Classic? Tekkit Classic on modack peliin, jonka kaikki tuntevat ja rakastavat; Minecraft. Se sisältää joitain ver

Asenna iRedMail Debian Wheezylle

Asenna iRedMail Debian Wheezylle

Käytätkö erilaista järjestelmää? Tämä opetusohjelma näyttää kuinka asennat ryhmätyöohjelman iRedMail uuteen Debian Wheezy -asennukseen. Sinun pitäisi käyttää tarjoilua

Jekyll-blogin luominen Ubuntuun 16.04

Jekyll-blogin luominen Ubuntuun 16.04

Käytätkö erilaista järjestelmää? Jekyll on loistava vaihtoehto WordPressille bloggaamiseen tai sisällön jakamiseen. Se ei vaadi tietokantoja ja se on erittäin helppoa i

Valvomattomien päivitysten asentaminen Debian 9:ssä (Stretch)

Valvomattomien päivitysten asentaminen Debian 9:ssä (Stretch)

Käytätkö erilaista järjestelmää? Jos ostat Debian-palvelimen, sinulla pitäisi aina olla viimeisimmät tietoturvakorjaukset ja -päivitykset riippumatta siitä, oletko nukkumassa vai ei.

PHP 7.0:n tai PHP 7.1:n asentaminen ja määrittäminen Ubuntu 16.04:ssä

PHP 7.0:n tai PHP 7.1:n asentaminen ja määrittäminen Ubuntu 16.04:ssä

PHP ja siihen liittyvät paketit ovat yleisimmin käytettyjä komponentteja verkkopalvelimen käyttöönotossa. Tässä artikkelissa opimme asentamaan PHP 7.0 tai PHP 7.1 o

Kuinka asentaa Squid Proxy CentOS:ään

Kuinka asentaa Squid Proxy CentOS:ään

Squid on suosittu, ilmainen Linux-ohjelma, jonka avulla voit luoda edelleenlähetysverkkovälityspalvelimen. Tässä oppaassa näet, kuinka Squid asennetaan CentOS:ään kääntääksesi sinut

Lighttpd:n (LLMP Stack) asentaminen CentOS 6:een

Lighttpd:n (LLMP Stack) asentaminen CentOS 6:een

Johdanto Lighttpd on Apachen haarukka, jonka tarkoituksena on olla paljon vähemmän resurssiintensiivinen. Se on kevyt, tästä syystä sen nimi, ja on melko yksinkertainen käyttää. Asenna

Kolme ilmaista palvelinohjauspaneelia (pikaasennus)

Kolme ilmaista palvelinohjauspaneelia (pikaasennus)

1. Virtualmin/Webmin Virtualmin on tehokas ja joustava web-hosting-ohjauspaneeli Linux- ja UNIX-järjestelmille, joka perustuu tunnettuun avoimen lähdekoodin verkkotietokantaan

Yii-sovelluksen määrittäminen Ubuntuun 14.04

Yii-sovelluksen määrittäminen Ubuntuun 14.04

Yii on PHP-kehys, jonka avulla voit kehittää sovelluksia nopeammin ja helpommin. Yiin asentaminen Ubuntuun on yksinkertaista, kuten opit tarkalleen

Näytön käyttö Ubuntu 14.04:ssä

Näytön käyttö Ubuntu 14.04:ssä

Screen on sovellus, joka mahdollistaa usean pääteistuntojen käytön yhdessä ikkunassa. Tämän avulla voit simuloida useita pääteikkunoita, joissa se ma

Asenna oma DNS-palvelin Debianissa/Ubuntussa

Asenna oma DNS-palvelin Debianissa/Ubuntussa

Tämä opetusohjelma selittää, kuinka DNS-palvelin määritetään Bind9:n avulla Debianissa tai Ubuntussa. Korvaa koko artikkelin ajan verkkotunnuksesi-nimi.com vastaavasti. klo th

Logrotaten käyttäminen lokitiedostojen hallintaan

Logrotaten käyttäminen lokitiedostojen hallintaan

Johdanto Logrotate on Linux-apuohjelma, joka yksinkertaistaa lokitiedostojen hallintaa. Se toimii yleensä kerran päivässä cron-työn kautta ja hallitsee lokipohjaa

Staattisen verkon ja IPv6:n määrittäminen CentOS 7:ssä

Staattisen verkon ja IPv6:n määrittäminen CentOS 7:ssä

VULTR on äskettäin tehnyt muutoksia heidän omiinsa, ja kaiken pitäisi nyt toimia hyvin heti, kun NetworkManager on käytössä. Jos haluat poistaa käytöstä

Icinga2:n muokkaaminen käyttämään pää/asiakasmallia CentOS 6:ssa tai CentOS 7:ssä

Icinga2:n muokkaaminen käyttämään pää/asiakasmallia CentOS 6:ssa tai CentOS 7:ssä

Icinga2 on tehokas valvontajärjestelmä, ja master-client-mallissa käytettynä se voi korvata NRPE-pohjaisten valvontatarkastusten tarpeen. Pääasiakas

Asenna Red5 Media Server Ubuntu 16.04:ään

Asenna Red5 Media Server Ubuntu 16.04:ään

Käytätkö erilaista järjestelmää? Red5 on Java-kielellä toteutettu avoimen lähdekoodin mediapalvelin, jonka avulla voit ajaa Flash-monikäyttäjäsovelluksia, kuten suoratoistoa.

Käännä ja asenna Nginx PageSpeed-moduulilla Debian 8:ssa

Käännä ja asenna Nginx PageSpeed-moduulilla Debian 8:ssa

Tässä artikkelissa näemme, kuinka Nginx-päälinja voidaan kääntää ja asentaa virallisista Nginx-lähteistä PageSpeed-moduulilla, jonka avulla voit

Apache Cassandra 3.11.x:n asentaminen Ubuntu 16.04 LTS:ään

Apache Cassandra 3.11.x:n asentaminen Ubuntu 16.04 LTS:ään

Käytätkö erilaista järjestelmää? Apache Cassandra on ilmainen ja avoimen lähdekoodin NoSQL-tietokannan hallintajärjestelmä, joka on suunniteltu tarjoamaan skaalautuvuutta, hig.

Koneiden nousu: tekoälyn todelliset sovellukset

Koneiden nousu: tekoälyn todelliset sovellukset

Tekoäly ei ole tulevaisuudessa, se tässä nykyisyydessä Tässä blogissa Lue kuinka tekoälysovellukset ovat vaikuttaneet eri sektoreihin.

DDOS-hyökkäykset: lyhyt katsaus

DDOS-hyökkäykset: lyhyt katsaus

Oletko myös DDOS-hyökkäysten uhri ja hämmentynyt ehkäisymenetelmistä? Lue tämä artikkeli ratkaistaksesi kysymyksesi.

Oletko koskaan miettinyt, kuinka hakkerit ansaitsevat rahaa?

Oletko koskaan miettinyt, kuinka hakkerit ansaitsevat rahaa?

Olet ehkä kuullut, että hakkerit ansaitsevat paljon rahaa, mutta oletko koskaan miettinyt, kuinka he ansaitsevat tuollaista rahaa? keskustellaan.

Googlen vallankumouksellisia keksintöjä, jotka helpottavat elämääsi.

Googlen vallankumouksellisia keksintöjä, jotka helpottavat elämääsi.

Haluatko nähdä Googlen vallankumouksellisia keksintöjä ja kuinka nämä keksinnöt muuttivat jokaisen ihmisen elämää nykyään? Lue sitten blogia nähdäksesi Googlen keksinnöt.

Essential perjantai: Mitä tekoäly-ohjatuille autoille tapahtui?

Essential perjantai: Mitä tekoäly-ohjatuille autoille tapahtui?

Konsepti itseohjautuvista autoista lähteä tielle tekoälyn avulla on ollut haaveena jo jonkin aikaa. Mutta useista lupauksista huolimatta niitä ei näy missään. Lue tämä blogi saadaksesi lisätietoja…

Teknologinen singulaarisuus: ihmissivilisaation kaukainen tulevaisuus?

Teknologinen singulaarisuus: ihmissivilisaation kaukainen tulevaisuus?

Kun tiede kehittyy nopeasti ja ottaa haltuunsa suuren osan ponnisteluistamme, myös riskit altistaa itsemme selittämättömälle singulariteetille kasvavat. Lue, mitä singulaarisuus voisi tarkoittaa meille.

Tietojen tallennuksen evoluutio – Infografiikka

Tietojen tallennuksen evoluutio – Infografiikka

Tietojen säilytystavat ovat kehittyneet mahdollisesti Datan syntymästä lähtien. Tämä blogi käsittelee tiedon tallennuksen kehitystä infografian pohjalta.

Big Datan referenssiarkkitehtuurikerrosten toiminnot

Big Datan referenssiarkkitehtuurikerrosten toiminnot

Blogista saat tietää Big Data -arkkitehtuurin eri kerroksista ja niiden toiminnoista yksinkertaisimmalla tavalla.

6 uskomatonta etua älykkäiden kotilaitteiden käyttämisestä elämässämme

6 uskomatonta etua älykkäiden kotilaitteiden käyttämisestä elämässämme

Tässä digitaalisessa maailmassa kodin älylaitteista on tullut tärkeä osa elämää. Tässä on muutamia älykkäiden kodin laitteiden hämmästyttäviä etuja, joiden avulla ne tekevät elämästämme elämisen arvoista ja yksinkertaisempaa.

macOS Catalina 10.15.4 -täydennyspäivitys aiheuttaa enemmän ongelmia kuin ratkaiseminen

macOS Catalina 10.15.4 -täydennyspäivitys aiheuttaa enemmän ongelmia kuin ratkaiseminen

Apple julkaisi äskettäin macOS Catalina 10.15.4 -lisäpäivityksen ongelmien korjaamiseksi, mutta näyttää siltä, ​​että päivitys aiheuttaa lisää ongelmia, jotka johtavat mac-koneiden tiilikaamiseen. Lue tämä artikkeli saadaksesi lisätietoja