Kako namestiti Monico na CentOS 7

Monica je odprtokodni sistem za upravljanje osebnih odnosov. Pomislite na to kot na CRM (priljubljeno orodje, ki ga uporabljajo prodajne ekipe v svetu podjetij) za svoje prijatelje ali družino. Njegova izvorna koda je javno gostovana na GitHubu . V tem priročniku bomo pregledali postopek namestitve aplikacije Monica.

Zahteve

  • Git
  • NPM (Upravitelj paketov vozlišč)
  • PHP 7.1 ali novejši
  • MariaDB
  • Nginx
  • Skladatelj

Preden začneš

Preverite različico CentOS.

cat /etc/centos-release
# CentOS Linux release 7.5.1804 (Core)

Ustvarite nov nekorenski uporabniški račun z sudodostopom in preklopite nanj.

useradd -c "John Doe" johndoe && passwd johndoe
usermod -aG wheel johndoe
su - johndoe

OPOMBA : Zamenjajte johndoez vašim uporabniškim imenom .

Nastavite časovni pas.

timedatectl list-timezones
sudo timedatectl set-timezone 'Region/City'

Prepričajte se, da je vaš sistem posodobljen.

sudo yum update -y

Namestite zahtevane pakete.

sudo yum install -y git vim wget curl gcc-c++ make libpng-devel

Za preprostost onemogočite SELinux in požarni zid.

sudo setenforce 0
sudo systemctl stop firewalld
sudo systemctl disable firewalld

Namesti PHP

Nastavite repo Webtatic YUM.

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

Namestite PHP in potrebne razširitve PHP.

sudo yum install -y php72w php72w-cli php72w-fpm php72w-common php72w-mbstring php72w-xml php72w-mysql php72w-curl php72w-zip php72w-intl

Preverite različico.

php --version
# PHP 7.2.6 (cli) (built: Jun  2 2018 07:49:42) ( NTS )

Zaženite in omogočite PHP-FPM.

sudo systemctl start php-fpm.service
sudo systemctl enable php-fpm.service

Namestite MariaDB in nastavite bazo podatkov

Ustvarite repo datoteko za MariaDB.

sudo vi /etc/yum.repos.d/MariaDB.repo

Napolnite datoteko z naslednjim.

[mariadb]
name = MariaDB
baseurl = https://yum.mariadb.org/10.2/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

Namestite MariaDB.

sudo yum install -y MariaDB-server MariaDB-client

Preverite različico MariaDB.

mysql --version
# mysql  Ver 15.1 Distrib 10.2.16-MariaDB, for Linux (x86_64) using readline 5.1

Zaženite in omogočite storitev MariaDB.

sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service

Zaženite mysql_secure_installationskript, da izboljšate varnost namestitve MariaDB.

sudo mysql_secure_installation

Prijavite se v MariaDB kot root uporabnik.

mysql -u root -p
# Enter password:

Ustvarite novo zbirko podatkov MariaDB in uporabnika ter si zapomnite poverilnice.

CREATE DATABASE dbname;
GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
EXIT

Namestite in konfigurirajte Nginx

Ustvarite repo Nginx.

sudo vim /etc/yum.repos.d/nginx_mainline.repo

Napolnite ga z naslednjo vsebino.

[nginx]
name=nginx repo
baseurl=https://nginx.org/packages/mainline/centos/7/$basearch/
gpgcheck=1
enabled=1

Ustvarite podpisni ključ Nginx.

wget https://nginx.org/keys/nginx_signing.key
sudo rpm --import nginx_signing.key
rm nginx_signing.key

Namestite Nginx.

sudo yum install -y nginx

Preverite različico.

sudo nginx -v
# nginx version: nginx/1.15.0

Zaženite in omogočite Nginx.

sudo systemctl start nginx.service
sudo systemctl enable nginx.service

Zaženite sudo vim /etc/nginx/conf.d/monica.confin konfigurirajte Nginx za Monico.

server {
  listen 80;
  listen [::]:80;

  server_name example.com;
  root /var/www/monica/public/;

  index index.php;
  charset utf-8;

  location ^~ /storage {
    deny all;  
  }

  location / {
    try_files $uri $uri/ /index.php?$query_string;
  }

  location ~* \.php$ {
    fastcgi_split_path_info ^(.+\.php)(/.+)$;
    include fastcgi_params;
    fastcgi_pass 127.0.0.1:9000;
    include fastcgi_params;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_buffer_size 16k;
    fastcgi_buffers 4 16k;
  }
}

Shranite datoteko in zapustite.

Preizkusite konfiguracijo.

sudo nginx -t

Ponovno naložite Nginx.

sudo systemctl reload nginx.service

Namestite Node.js in NPM

Namestite Node.js.

curl --silent --location https://rpm.nodesource.com/setup_10.x | sudo bash -
sudo yum -y install nodejs

Preverite različici Node.js in npm.

node -v && npm -v
# v10.5.0
# 6.1.0

Namesti Composer

Namesti Composer.

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('SHA384', 'composer-setup.php') === '544e09ee996cdf60ece3804abc52599c22b1f40f4323403c44d44fdfdd586475ca9813a858088ffbc1f233e9b180f061') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
sudo mv composer.phar /usr/local/bin/composer

Preverite različico.

composer --version
# Composer version 1.6.5 2018-05-04 11:44:59

Namestite in konfigurirajte Monico

Ustvarite prazno korensko mapo dokumenta, kamor naj bo nameščena Monica.

sudo mkdir -p /var/www/monica

Pomaknite se do korenske mape dokumenta.

cd /var/www/monica

Spremeni lastništvo /var/www/monicamape na uporabnika johndoe.

sudo chown -R johndoe:johndoe /var/www/monica

Klonirajte skladišče Monica vanj.

git clone https://github.com/monicahq/monica.git .
git checkout tags/v2.3.1

OPOMBA: Najnovejšo uradno različico poiščite na strani z izdajami na GitHubu in posodobite zgornjo številko različice na najnovejšo izdajo.

Zaženite naslednje, da ustvarite svojo različico spremenljivk okolja, ki so potrebne za projekt.

cp .env.example .env

Posodobite .envdatoteko glede na vaše posebne potrebe. Ne pozabite nastaviti DB_USERNAMEin DB_PASSWORDs prej uporabljenimi nastavitvami.

Namestite vse pakete.

composer install --no-interaction --no-suggest --no-dev --ignore-platform-reqs

Namestite vse sprednje odvisnosti in orodja, potrebna za prevajanje sredstev.

npm install

Sestavite sredstva JS in CSS.

npm run production

Ustvarite aplikacijski ključ. To bo samodejno nastavljeno APP_KEYna pravilno vrednost.

php artisan key:generate

Zaženite selitve in začnite zbirko podatkov in mape s simbolnimi povezavami.

php artisan setup:production

Spremenite lastništvo /var/www/monicaimenika v nginx.

sudo chown -R nginx:nginx /var/www/monica

Zaženite sudo vim /etc/php-fpm.d/www.confin nastavite uporabnika in skupino na nginx. Sprva bodo nastavljeni na apache.

sudo vim /etc/php-fpm.d/www.conf
# user = nginx
# group = nginx

Ponovni zagon php-fpm.service

sudo systemctl restart php-fpm.service

Namestitev je končana. Odprite svojo domeno v spletnem brskalniku in sledite navodilom na zaslonu.

Pusti komentar

Vzpon strojev: aplikacije AI v resničnem svetu

Vzpon strojev: aplikacije AI v resničnem svetu

Umetna inteligenca ni v prihodnosti, tukaj je prav v sedanjosti. V tem blogu preberite, kako so aplikacije umetne inteligence vplivale na različne sektorje.

DDOS napadi: kratek pregled

DDOS napadi: kratek pregled

Ste tudi vi žrtev DDOS napadov in ste zmedeni glede načinov preprečevanja? Preberite ta članek, če želite rešiti svoja vprašanja.

Ste se kdaj vprašali, kako hekerji zaslužijo denar?

Ste se kdaj vprašali, kako hekerji zaslužijo denar?

Morda ste že slišali, da hekerji zaslužijo veliko denarja, a ste se kdaj vprašali, kako zaslužijo takšen denar? razpravljajmo.

Revolucionarni Googlovi izumi, ki vam bodo olajšali življenje.

Revolucionarni Googlovi izumi, ki vam bodo olajšali življenje.

Ali želite videti revolucionarne izume Googla in kako so ti izumi danes spremenili življenje vsakega človeka? Nato preberite v blogu in si oglejte Googlove izume.

Friday Essential: Kaj se je zgodilo z avtomobili, ki jih poganja umetna inteligenca?

Friday Essential: Kaj se je zgodilo z avtomobili, ki jih poganja umetna inteligenca?

Koncept samovozečih avtomobilov, ki zapeljejo na ceste s pomočjo umetne inteligence, so sanje, ki jih imamo že nekaj časa. A kljub številnim obljubam jih ni nikjer. Preberite ta blog, če želite izvedeti več…

Tehnološka singularnost: oddaljena prihodnost človeške civilizacije?

Tehnološka singularnost: oddaljena prihodnost človeške civilizacije?

Ker se znanost hitro razvija in prevzame veliko naših prizadevanj, se povečuje tudi tveganje, da se podvržemo nerazložljivi singularnosti. Preberite, kaj bi za nas lahko pomenila singularnost.

Funkcionalnosti slojev referenčne arhitekture velikih podatkov

Funkcionalnosti slojev referenčne arhitekture velikih podatkov

Preberite blog, če želite na najpreprostejši način spoznati različne plasti v arhitekturi velikih podatkov in njihove funkcionalnosti.

Razvoj shranjevanja podatkov – Infografika

Razvoj shranjevanja podatkov – Infografika

Metode shranjevanja podatkov so se lahko razvijale od rojstva podatkov. Ta blog pokriva razvoj shranjevanja podatkov na podlagi infografike.

6 neverjetnih prednosti pametnih naprav za dom v našem življenju

6 neverjetnih prednosti pametnih naprav za dom v našem življenju

V tem digitalno vodenem svetu so pametne naprave za dom postale ključni del življenja. Tukaj je nekaj neverjetnih prednosti pametnih naprav za dom o tem, kako naredijo naše življenje vredno življenja in poenostavijo.

Posodobitev dodatka macOS Catalina 10.15.4 povzroča več težav kot jih rešuje

Posodobitev dodatka macOS Catalina 10.15.4 povzroča več težav kot jih rešuje

Pred kratkim je Apple izdal macOS Catalina 10.15.4 dopolnilno posodobitev za odpravo težav, vendar se zdi, da posodobitev povzroča več težav, ki vodijo do opečenja računalnikov Mac. Preberite ta članek, če želite izvedeti več