Hvernig á að setja upp Invoice Ninja á CentOS 7

Kynning

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

Í þessari kennslu mun ég útskýra hvernig á að setja upp Invoice Ninja á CentOS 7 miðlara.

Forkröfur

  • CentOS 7 x64 tilvik með 2GB vinnsluminni uppsett.
  • A sudo notandi .

Skref 1: Uppfærðu kerfið

Áður en einhver pakki er settur upp á CentOS 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 yum install epel-release -y
sudo yum update -y
sudo shutdown -r now

Skref 2: Settu upp LEMP Server.

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

Settu fyrst upp Nginx og MariaDB með eftirfarandi skipun:

sudo yum 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 mariadb
sudo systemctl enable mariadb

Næst þarftu PHP7 og PHP7.0-FPM fyrir Invoice Ninja uppsetninguna.

Fyrst skaltu bæta PHP7.0 geymslunni við kerfið með eftirfarandi skipun:

sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

Næst skaltu setja upp PHP7.0-FPM og aðrar nauðsynlegar PHP viðbætur með eftirfarandi skipun:

sudo 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 -y

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

sudo nano /etc/php.ini

Breyttu eftirfarandi línu:

cgi.fix_pathinfo=0

Vistaðu og lokaðu skránni.

Skref 3: Stilltu gagnagrunn

Sjálfgefið er að MariaDB uppsetning er ekki örugg svo þú þarft að tryggja hana fyrst. Þú getur gert þetta með því að keyra mysql öruggt uppsetningarforskrift:

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 við MySQL skel með eftirfarandi skipun:

mysql -u root -p

Sláðu inn rót lykilorðið þitt og ýttu á enter, þú munt sjá MySQL skelina:

Næst skaltu búa 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

Næst þarftu að stilla PHP-FPM laug fyrir Nginx notanda:

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

Breyttu eftirfarandi línum:

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

Vistaðu og lokaðu skránni þegar þú ert búinn.

Næst þarftu að búa til nýja möppu fyrir PHP lotu og falsskrá:

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

Að lokum skaltu byrja PHP7.0-FPM þjónustuna og bæta henni við til að byrja á ræsingartíma:

sudo systemctl start php-fpm
systemctl enable php-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 einnig að setja upp Dependency Manager fyrir PHP (tónskáld). Þú 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ð tónskáldaskipun 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 .env skrá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 nginx:nginx /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

Næst skaltu gefa viðeigandi leyfi fyrir skírteinisskránni:

sudo chmod 600 /etc/nginx/cert/*

Næst skaltu búa til nýja sýndarhýsilstillingarskrá í /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.15.23;
    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;
       }
    }

Vistaðu og lokaðu skránni og endurræstu 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 eldvegg. Keyrðu skipanirnar hér að neðan til að opna gáttirnar:

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

Að lokum, Opnaðu vafrann þinn og sláðu inn slóðina https://192.168.15.23og ljúktu síðan nauðsynlegum skrefum til að klára uppsetninguna.

Til hamingju! við höfum sett upp Invoice Ninja með Nginx og MariaDB á CentOS 7 miðlara.


Settu upp Plesk á CentOS 7

Settu upp Plesk á CentOS 7

Að nota annað kerfi? Plesk er sérstakt stjórnborð fyrir vefþjón sem gerir notendum kleift að stjórna persónulegum og/eða viðskiptavinum vefsíðum sínum, gagnagrunnum

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

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

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 Microweber á CentOS 7

Hvernig á að setja upp Microweber á CentOS 7

Að nota annað kerfi? Microweber er opinn uppspretta draga og sleppa CMS og netverslun. Microweber frumkóði er hýst á GitHub. Þessi handbók mun sýna þér

Hvernig á að setja upp Mattermost 4.1 á CentOS 7

Hvernig á að setja upp Mattermost 4.1 á CentOS 7

Að nota annað kerfi? Mattermost er opinn uppspretta, sjálfhýst valkostur við Slack SAAS skilaboðaþjónustuna. Með öðrum orðum, með Mattermost, þú ca

Að búa til net Minecraft netþjóna með BungeeCord á Debian 8, Debian 9 eða CentOS 7

Að búa til net Minecraft netþjóna með BungeeCord á Debian 8, Debian 9 eða CentOS 7

Það sem þú þarft Vultr VPS með að minnsta kosti 1GB af vinnsluminni. SSH aðgangur (með rót / stjórnunarréttindi). Skref 1: Uppsetning BungeeCord Fyrst af öllu

Láttu dulkóða á Plesk

Láttu dulkóða á Plesk

Plesk stjórnborðið er með mjög fallegri samþættingu fyrir Lets Encrypt. Lets Encrypt er ein af einu SSL veitunum sem gefa út skírteini að fullu

Láttu dulkóða á cPanel

Láttu dulkóða á cPanel

Lets Encrypt er vottunaryfirvöld sem sérhæfir sig í að útvega SSL vottorð án endurgjalds. cPanel hefur byggt upp snyrtilega samþættingu svo þú og viðskiptavinurinn þinn

Hvernig á að setja upp Concrete5 á CentOS 7

Hvernig á að setja upp Concrete5 á CentOS 7

Að nota annað kerfi? Concrete5 er opinn uppspretta CMS sem býður upp á marga áberandi og gagnlega eiginleika til að aðstoða ritstjóra við að framleiða efni auðveldlega og

Hvernig á að setja upp Review Board á CentOS 7

Hvernig á að setja upp Review Board á CentOS 7

Að nota annað kerfi? Review Board er ókeypis og opinn hugbúnaður til að skoða frumkóða, skjöl, myndir og margt fleira. Það er vefbundið hugbúnaðarstríð

Settu upp HTTP auðkenningu með Nginx á CentOS 7

Settu upp HTTP auðkenningu með Nginx á CentOS 7

Í þessari handbók munt þú læra hvernig á að setja upp HTTP auðkenningu fyrir Nginx vefþjón sem keyrir á CentOS 7. Kröfur Til að byrja þarftu að

Hvernig á að setja upp YOURLS á CentOS 7

Hvernig á að setja upp YOURLS á CentOS 7

YOURLS (Your Own URL Shortener) er opinn uppspretta vefslóða styttingar og gagnagreiningarforrit. Í þessari grein munum við fjalla um ferlið við uppsetningu

How to Install and Configure ArangoDB on CentOS 7

How to Install and Configure ArangoDB on CentOS 7

Using a Different System? Introduction ArangoDB is an open source NoSQL database with a flexible data model for documents, graphs, and key-values. It is

Notkun Etckeeper fyrir útgáfustýringu á /etc

Notkun Etckeeper fyrir útgáfustýringu á /etc

Inngangur /etc/ skrárinn gegnir mikilvægu hlutverki í því hvernig Linux kerfi virkar. Ástæðan fyrir þessu er sú að næstum allar kerfisstillingar

Af hverju ættir þú að nota SSHFS? Hvernig á að tengja fjarskráarkerfi með SSHFS á CentOS 6

Af hverju ættir þú að nota SSHFS? Hvernig á að tengja fjarskráarkerfi með SSHFS á CentOS 6

Margir kerfisstjórar stjórna miklu magni af netþjónum. Þegar aðgangur þarf að skrám á mismunandi netþjónum er innskráning á hvern og einn fyrir sig ca

Setja upp Half Life 2 Server á CentOS 6

Setja upp Half Life 2 Server á CentOS 6

Þessi kennsla mun fjalla um ferlið við að setja upp Half Life 2 leikjaþjón á CentOS 6 System. Skref 1: Forsendur settar upp Til að setja upp ou

Hvernig á að setja upp Laravel GitScrum á CentOS 7

Hvernig á að setja upp Laravel GitScrum á CentOS 7

Laravel GitScrum, eða GitScrum er opinn uppspretta framleiðniverkfæri hannað til að hjálpa þróunarteymi að innleiða Scrum aðferðafræðina á svipaðan hátt

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