Hvernig á að setja upp Invoice Ninja á Ubuntu 16.04

Kynning

Invoice Ninja er ókeypis og opinn hugbúnaður á vefnum sem hægt er að nota fyrir reikningagerð, greiðslur, tímamælingu og margt fleira. Það er besta lausnin fyrir reikninga og reikninga viðskiptavina. Þú getur auðveldlega búið til og sent reikninga á netinu á nokkrum sekúndum. Invoice Ninja gerir þér kleift að búa til sérsniðna reikninga og sýna lifandi reikninga sem PDF skjal.

Í þessari kennslu mun ég útskýra hvernig á að setja upp Invoice Ninja á Ubuntu 16.04 netþjóni.

Forkröfur

  • Ubuntu 16.04 netþjónstilvik með 2GB vinnsluminni uppsett.
  • Sudo notandi með rótarréttindi.
  • Þú þarft að vita aðal IP-tölu netþjónsins þíns. Í þessari kennslu mun ég nota 192.168.0.227.

Skref 1: Uppfærðu kerfið

Áður en þú setur upp einhverja pakka á Ubuntu netþjónstilviki er mælt með því að uppfæra kerfið. Skráðu þig inn á netþjóninn þinn í gegnum SSH sem sudo notandi þinn og keyrðu eftirfarandi skipun:

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

Skref 2: Settu upp LEMP stafla

Áður en þú byrjar þarftu að stilla LEMP (Nginx, MariaDB og PHP) stafla á netþjóninum þínum.

Settu fyrst upp Nginx og MariaDB með eftirfarandi skipun:

sudo apt-get install nginx mariadb-server -y

Þegar uppsetningunni er lokið skaltu ræsa Nginx og MariaDB þjónustuna og gera þeim kleift að byrja við ræsingu:

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

Næst þarftu PHP 7 og PHP-FPM fyrir Invoice Ninja uppsetninguna.

Þú getur sett upp PHP-FPM og aðrar nauðsynlegar PHP viðbætur með eftirfarandi skipun:

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

Þegar uppsetningunni er lokið þarftu að breyta php.inistillingarskránni:

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

Breyttu eftirfarandi línu:

cgi.fix_pathinfo=0

Vistaðu og lokaðu skránni.

Skref 3: Stilla gagnagrunn

Sjálfgefið er að MariaDB uppsetningin hefur ekki verið tryggð. Þú verður að tryggja það. Þú getur gert þetta með því að keyra mysql_secure_installation script.

sudo mysql_secure_installation

Svaraðu öllum spurningunum eins og sýnt er hér að neðan:

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

Þegar allt er búið, tengdu með MySQL skelinni með eftirfarandi skipun:

mysql -u root -p

Sláðu inn rótarlykilorðið þitt og ýttu á „enter“, þú munt sjá MySQL (MariaDB) skelina.

Búðu til nýjan gagnagrunn og nýjan notanda fyrir Invoice 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

Skref 4: Stilltu PHP-FPM

Stilltu PHP-FPM laugina fyrir Nginx notandann:

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

Bættu við eftirfarandi línum:

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

Vistaðu og lokaðu skránni þegar þú ert búinn, endurræstu síðan PHP-FPM til að beita þessum breytingum.

systemctl restart php7.0-fpm

Skref 5: Sæktu og stilltu Invoice Ninja

Þú getur halað niður nýjustu stöðugu útgáfunni af Invoice Ninja frá GitHub geymslunni með eftirfarandi skipun:

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

Þú þarft líka að setja upp Composer, ávanastjóra fyrir PHP. Þú getur sett það upp með eftirfarandi skipun:

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

Næst skaltu setja upp allar Invoice Ninja ósjálfstæðin með því að nota composerskipunina eins og sýnt er hér að neðan:

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

Þegar uppsetningunni er lokið skaltu endurnefna .envskrána og gera nokkrar breytingar.

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

Breyttu línunum eins og sýnt er hér að neðan:

DB_DATABASE=ninja_db
DB_USERNAME=ninja
DB_PASSWORD=password

Vistaðu skrána þegar þú ert búinn, keyrðu síðan eftirfarandi skipun til að undirbúa gagnagrunninn:

sudo php artisan migrate

Þú verður beðinn um að keyra skipunina, sláðu inn "yes" og ýttu á "enter".

Næst skaltu sjá gagnagrunninn með skrám eins og sýnt er hér að neðan:

sudo php artisan db:seed

Sláðu inn "já" og ýttu á "enter".

Næst skaltu breyta eignarhaldi /var/www/html/ninjamöppunnar:

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

Skref 6: Stilltu Nginx fyrir Invoice Ninja

Næst þarftu að búa til SSL vottorð og búa til nýja sýndarhýsingarstillingu fyrir Invoice Ninja.

Fyrst skaltu búa til möppu fyrir SSL:

sudo mkdir -p /etc/nginx/cert/

Næst skaltu búa til SSL vottorð með eftirfarandi skipun:

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

Gefðu viðeigandi heimildir fyrir skírteinisskrána.

sudo chmod 600 /etc/nginx/cert/*

Búðu til nýja sýndarhýsilstillingarskrá inni í /etc/nginx/möppunni.

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

Bættu við eftirfarandi línum:

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

Vistaðu og lokaðu skránni. Virkjaðu síðan sýndarhýsilinn með eftirfarandi skipun.

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

Að lokum skaltu endurræsa Nginx vefþjóninn.

sudo systemctl restart nginx

Skref 7: Fáðu aðgang að reikningi Ninja

Áður en þú opnar Invoice Ninja vefviðmótið þarftu að leyfa HTTP og HTTPS þjónustu í gegnum UFW eldvegginn. Keyrðu eftirfarandi skipanir til að opna þessar höfn:

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

Að lokum skaltu opna vafrann þinn og opna vefslóðina https://192.168.0.227. Þú getur síðan lokið nauðsynlegum skrefum til að klára uppsetninguna.

Til hamingju! Við höfum sett upp Invoice Ninja með Nginx og MariaDB á Ubuntu 16.04 netþjóni.


Settu upp Cacti á Debian Jessie

Settu upp Cacti á Debian Jessie

Inngangur Cacti er opinn vöktunar- og grafatól sem byggir að fullu á RRD gögnum. Í gegnum Cacti geturðu fylgst með næstum hvers kyns tækjum

Settu upp Lets Encrypt SSL á WordPress appi með einum smelli

Settu upp Lets Encrypt SSL á WordPress appi með einum smelli

Inngangur Lets Encrypt er vottunaryfirvaldsþjónusta sem býður upp á ókeypis TLS/SSL vottorð. Uppsetningarferlið er einfaldað af Certbot,

Hvernig á að setja upp Tekkit Classic Server á Ubuntu 16.10

Hvernig á að setja upp Tekkit Classic Server á Ubuntu 16.10

Að nota annað kerfi? Hvað er Tekkit Classic? Tekkit Classic er modpack fyrir leikinn sem allir þekkja og elska; Minecraft. Það inniheldur eitthvað af ver

Settu upp iRedMail á Debian Wheezy

Settu upp iRedMail á Debian Wheezy

Að nota annað kerfi? Þessi kennsla mun sýna þér hvernig á að setja upp hópbúnaðinn iRedMail á nýrri uppsetningu á Debian Wheezy. Þú ættir að nota þjóna

Að búa til Jekyll blogg á Ubuntu 16.04

Að búa til Jekyll blogg á Ubuntu 16.04

Að nota annað kerfi? Jekyll er frábær valkostur við WordPress til að blogga eða deila efni. Það krefst enga gagnagrunna og það er mjög auðvelt i

Hvernig á að setja upp og stilla PHP 7.0 eða PHP 7.1 á Ubuntu 16.04

Hvernig á að setja upp og stilla PHP 7.0 eða PHP 7.1 á Ubuntu 16.04

PHP og tengdir pakkar eru algengustu íhlutirnir þegar vefþjónn er notaður. Í þessari grein munum við læra hvernig á að setja upp PHP 7.0 eða PHP 7.1 o

Hvernig á að setja upp Squid Proxy á CentOS

Hvernig á að setja upp Squid Proxy á CentOS

Smokkfiskur er vinsælt, ókeypis Linux forrit sem gerir þér kleift að búa til framsendingarforrit á vefnum. Í þessari handbók muntu sjá hvernig á að setja upp Squid á CentOS til að snúa þér

Hvernig á að setja upp Lighttpd (LLMP Stack) á CentOS 6

Hvernig á að setja upp Lighttpd (LLMP Stack) á CentOS 6

Inngangur Lighttpd er gaffal af Apache sem miðar að því að vera miklu minna auðlindafrekt. Hann er léttur, þess vegna heitir hann, og er frekar einfaldur í notkun. Uppsetning

Þrjú ókeypis stjórnborð miðlara (fljót uppsetning)

Þrjú ókeypis stjórnborð miðlara (fljót uppsetning)

1. Virtualmin/Webmin Virtualmin er öflugt og sveigjanlegt stjórnborð fyrir vefhýsingu fyrir Linux og UNIX kerfi byggt á hinum vel þekkta Open Source vefgrunni

Setja upp Yii forrit á Ubuntu 14.04

Setja upp Yii forrit á Ubuntu 14.04

Yii er PHP ramma sem gerir þér kleift að þróa forrit hraðar og auðveldlega. Uppsetning Yii á Ubuntu er einföld, þar sem þú munt læra nákvæmlega

Notkun Skjár á Ubuntu 14.04

Notkun Skjár á Ubuntu 14.04

Skjár er forrit sem leyfir margs konar notkun flugstöðvarlota innan eins glugga. Þetta gerir þér kleift að líkja eftir mörgum flugstöðvum gluggum þar sem það ma

Settu upp þinn eigin DNS netþjón á Debian/Ubuntu

Settu upp þinn eigin DNS netþjón á Debian/Ubuntu

Þessi kennsla útskýrir hvernig á að setja upp DNS netþjón með Bind9 á Debian eða Ubuntu. Í gegnum greinina skaltu skipta út-léninu þínu.com í samræmi við það. Á þ

Notkun Logrotate til að stjórna annálaskrám

Notkun Logrotate til að stjórna annálaskrám

Inngangur Logrotate er Linux tól sem einfaldar stjórnun annálaskráa. Það keyrir venjulega einu sinni á dag í gegnum cron-vinnu og stjórnar annálagrunni

Stilla Static Networking og IPv6 á CentOS 7

Stilla Static Networking og IPv6 á CentOS 7

VULTR hefur nýlega gert breytingar á enda þeirra og allt ætti nú að virka vel út úr kassanum með NetworkManager virkt. Ef þú vilt slökkva á

Breytir Icinga2 til að nota Master/Client Model á CentOS 6 eða CentOS 7

Breytir Icinga2 til að nota Master/Client Model á CentOS 6 eða CentOS 7

Icinga2 er öflugt eftirlitskerfi og þegar það er notað í aðal-viðskiptavinamódel getur það komið í stað þörf fyrir NRPE-undirstaða vöktunareftirlit. Húsbóndinn

Settu upp Red5 Media Server á Ubuntu 16.04

Settu upp Red5 Media Server á Ubuntu 16.04

Að nota annað kerfi? Red5 er opinn uppspretta miðlara útfærður í Java sem gerir þér kleift að keyra Flash fjölnotendaforrit eins og straumspilun í beinni

Settu saman og settu upp Nginx með PageSpeed ​​Module á Debian 8

Settu saman og settu upp Nginx með PageSpeed ​​Module á Debian 8

Í þessari grein munum við sjá hvernig á að setja saman og setja upp Nginx mainline frá opinberum heimildum Nginx með PageSpeed ​​einingunni, sem gerir þér kleift að

Hvernig á að setja upp Apache Cassandra 3.11.x á CentOS 7

Hvernig á að setja upp Apache Cassandra 3.11.x á CentOS 7

Að nota annað kerfi? Apache Cassandra er ókeypis og opinn uppspretta NoSQL gagnagrunnsstjórnunarkerfi sem er hannað til að veita sveigjanleika, háan

Hvernig á að setja upp Vanilla Forum á Ubuntu 16.04

Hvernig á að setja upp Vanilla Forum á Ubuntu 16.04

Að nota annað kerfi? Vanilla forum er opinn uppspretta spjallforrit skrifað í PHP. Það er fullkomlega sérhannaðar, auðvelt í notkun og styður utanaðkomandi

Hvernig á að setja upp Gitea á Debian 9

Hvernig á að setja upp Gitea á Debian 9

Að nota annað kerfi? Gitea er annað opinn uppspretta, sjálfhýst útgáfustýringarkerfi knúið af Git. Gitea er skrifað á Golang og er

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Gervigreind er ekki í framtíðinni, hún er hér í nútímanum Í þessu bloggi Lestu hvernig gervigreindarforrit hafa haft áhrif á ýmsa geira.

DDOS árásir: Stutt yfirlit

DDOS árásir: Stutt yfirlit

Ertu líka fórnarlamb DDOS árása og ruglaður með forvarnaraðferðirnar? Lestu þessa grein til að leysa spurningar þínar.

Hefur þú einhvern tíma velt því fyrir þér hvernig tölvuþrjótar græða peninga?

Hefur þú einhvern tíma velt því fyrir þér hvernig tölvuþrjótar græða peninga?

Þú gætir hafa heyrt að tölvuþrjótar græða mikið af peningum, en hefur þú einhvern tíma velt því fyrir þér hvernig þeir vinna sér inn svona peninga? við skulum ræða.

Byltingarkenndar uppfinningar frá Google sem munu auðvelda lífi þínu.

Byltingarkenndar uppfinningar frá Google sem munu auðvelda lífi þínu.

Viltu sjá byltingarkenndar uppfinningar frá Google og hvernig þessar uppfinningar breyttu lífi hvers manns í dag? Lestu síðan til að blogga til að sjá uppfinningar frá Google.

Föstudagur Nauðsynlegur: Hvað varð um gervigreindardrifna bíla?

Föstudagur Nauðsynlegur: Hvað varð um gervigreindardrifna bíla?

Hugmyndin um að sjálfkeyrandi bílar fari á göturnar með hjálp gervigreindar er draumur sem við höfum átt um tíma núna. En þrátt fyrir nokkur loforð eru þau hvergi sjáanleg. Lestu þetta blogg til að læra meira…

Tæknileg sérkenni: Fjarlæg framtíð mannlegrar siðmenningar?

Tæknileg sérkenni: Fjarlæg framtíð mannlegrar siðmenningar?

Þar sem vísindin þróast hratt og taka yfir mikið af viðleitni okkar, eykst hættan á því að verða fyrir óútskýranlegri einstæðu. Lestu, hvað sérkenni gæti þýtt fyrir okkur.

Þróun gagnageymslu – Infographic

Þróun gagnageymslu – Infographic

Geymsluaðferðir gagna hafa verið að þróast gæti verið frá fæðingu gagna. Þetta blogg fjallar um þróun gagnageymslu á grundvelli upplýsingamynda.

Virkni Big Data Reference Architecture Layers

Virkni Big Data Reference Architecture Layers

Lestu bloggið til að þekkja mismunandi lög í Big Data Architecture og virkni þeirra á einfaldasta hátt.

6 ótrúlegir kostir þess að hafa snjall heimilistæki í lífi okkar

6 ótrúlegir kostir þess að hafa snjall heimilistæki í lífi okkar

Í þessum stafræna heimi hafa snjallheimilistæki orðið afgerandi hluti af lífi. Hér eru nokkrir ótrúlegir kostir snjallheimatækja um hvernig þau gera líf okkar þess virði að lifa því og einfaldara.

macOS Catalina 10.15.4 viðbót uppfærsla veldur fleiri vandamálum en að leysa

macOS Catalina 10.15.4 viðbót uppfærsla veldur fleiri vandamálum en að leysa

Nýlega gaf Apple út macOS Catalina 10.15.4 viðbótaruppfærslu til að laga vandamál en svo virðist sem uppfærslan sé að valda fleiri vandamálum sem leiða til múrsteins á Mac vélum. Lestu þessa grein til að læra meira