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.

Skildu eftir athugasemd

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.

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.

Þ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.

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