Krav
Før du begynner
Installer PHP
Installer MariaDB og konfigurer databasen
Installer og konfigurer Nginx
Installer Node.js og NPM
Installer Composer
Installer og konfigurer Monica
Monica er et åpen kildekodesystem for personlig relasjonsstyring. Tenk på det som et CRM (et populært verktøy som brukes av salgsteam i bedriftsverdenen) for venner eller familie. Kildekoden er offentlig vert på GitHub . I denne veiledningen vil vi gå gjennom installasjonsprosessen til en Monica-applikasjon.
Krav
- Git
- NPM (Node Package Manager)
- PHP 7.1 eller nyere
- MariaDB
- Nginx
- Komponist
Før du begynner
Sjekk CentOS-versjonen.
cat /etc/centos-release
# CentOS Linux release 7.5.1804 (Core)
Opprett en ny ikke-rootbrukerkonto med sudotilgang og bytt til den.
useradd -c "John Doe" johndoe && passwd johndoe
usermod -aG wheel johndoe
su - johndoe
MERK : Erstatt johndoemed brukernavnet ditt .
Sett opp tidssonen.
timedatectl list-timezones
sudo timedatectl set-timezone 'Region/City'
Sørg for at systemet ditt er oppdatert.
sudo yum update -y
Installer nødvendige pakker.
sudo yum install -y git vim wget curl gcc-c++ make libpng-devel
For enkelhets skyld, deaktiver SELinux og brannmur.
sudo setenforce 0
sudo systemctl stop firewalld
sudo systemctl disable firewalld
Installer PHP
Sett opp Webtatic YUM-repoen.
sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
Installer PHP og nødvendige PHP-utvidelser.
sudo yum install -y php72w php72w-cli php72w-fpm php72w-common php72w-mbstring php72w-xml php72w-mysql php72w-curl php72w-zip php72w-intl
Sjekk versjonen.
php --version
# PHP 7.2.6 (cli) (built: Jun 2 2018 07:49:42) ( NTS )
Start og aktiver PHP-FPM.
sudo systemctl start php-fpm.service
sudo systemctl enable php-fpm.service
Installer MariaDB og konfigurer databasen
Opprett repo-filen for MariaDB.
sudo vi /etc/yum.repos.d/MariaDB.repo
Fyll filen med følgende.
[mariadb]
name = MariaDB
baseurl = https://yum.mariadb.org/10.2/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
Installer MariaDB.
sudo yum install -y MariaDB-server MariaDB-client
Sjekk MariaDB-versjonen.
mysql --version
# mysql Ver 15.1 Distrib 10.2.16-MariaDB, for Linux (x86_64) using readline 5.1
Start og aktiver MariaDB-tjenesten.
sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service
Kjør mysql_secure_installationskriptet for å forbedre sikkerheten til MariaDB-installasjonen.
sudo mysql_secure_installation
Logg på MariaDB som root-bruker.
mysql -u root -p
# Enter password:
Opprett en ny MariaDB-database og bruker, og husk legitimasjonen.
CREATE DATABASE dbname;
GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
EXIT
Opprett Nginx-repoen.
sudo vim /etc/yum.repos.d/nginx_mainline.repo
Fyll den med følgende innhold.
[nginx]
name=nginx repo
baseurl=https://nginx.org/packages/mainline/centos/7/$basearch/
gpgcheck=1
enabled=1
Generer Nginx-signeringsnøkkelen.
wget https://nginx.org/keys/nginx_signing.key
sudo rpm --import nginx_signing.key
rm nginx_signing.key
Installer Nginx.
sudo yum install -y nginx
Sjekk versjonen.
sudo nginx -v
# nginx version: nginx/1.15.0
Start og aktiver Nginx.
sudo systemctl start nginx.service
sudo systemctl enable nginx.service
Kjør sudo vim /etc/nginx/conf.d/monica.confog konfigurer Nginx for Monica.
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;
}
}
Lagre filen og avslutt.
Test konfigurasjonen.
sudo nginx -t
Last inn Nginx på nytt.
sudo systemctl reload nginx.service
Installer Node.js og NPM
Installer Node.js.
curl --silent --location https://rpm.nodesource.com/setup_10.x | sudo bash -
sudo yum -y install nodejs
Sjekk Node.js- og npm-versjonene.
node -v && npm -v
# v10.5.0
# 6.1.0
Installer Composer
Installer 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
Sjekk versjonen.
composer --version
# Composer version 1.6.5 2018-05-04 11:44:59
Opprett en tom dokumentrotmappe der Monica skal installeres.
sudo mkdir -p /var/www/monica
Naviger til dokumentrotmappen.
cd /var/www/monica
Endre eierskap av /var/www/monicamappen til bruker johndoe.
sudo chown -R johndoe:johndoe /var/www/monica
Klon Monica-depotet til det.
git clone https://github.com/monicahq/monica.git .
git checkout tags/v2.3.1
MERK: Finn den siste offisielle versjonen på utgivelsessiden på GitHub og oppdater versjonsnummeret ovenfor til den siste utgivelsen.
Kjør følgende for å lage din egen versjon av miljøvariablene som trengs for prosjektet.
cp .env.example .env
Oppdater .envfilen til dine spesifikke behov. Ikke glem å stille inn DB_USERNAMEog DB_PASSWORDmed innstillingene som ble brukt tidligere.
Installer alle pakkene.
composer install --no-interaction --no-suggest --no-dev --ignore-platform-reqs
Installer alle front-end-avhengigheter og verktøy som trengs for å kompilere eiendeler.
npm install
Kompiler JS- og CSS-elementene.
npm run production
Generer en applikasjonsnøkkel. Dette vil automatisk settes APP_KEYtil riktig verdi.
php artisan key:generate
Kjør migreringene og seed databasen og symlinkmappene.
php artisan setup:production
Endre eierskap av /var/www/monicakatalogen til nginx.
sudo chown -R nginx:nginx /var/www/monica
Kjør sudo vim /etc/php-fpm.d/www.confog sett brukeren og gruppen til nginx. I utgangspunktet vil de bli satt til apache.
sudo vim /etc/php-fpm.d/www.conf
# user = nginx
# group = nginx
Omstart php-fpm.service
sudo systemctl restart php-fpm.service
Installasjonen er fullført. Åpne domenet ditt i nettleseren og følg instruksjonene som vises på skjermen.