Как да инсталирате Monica на Ubuntu 18.04 LTS

Моника е система за управление на лични взаимоотношения с отворен код. Мислете за него като за CRM (популярен инструмент, използван от търговските екипи в корпоративния свят) за вашите приятели или семейство. Неговият изходен код е публично хостван на GitHub . В това ръководство ще разгледаме процеса на инсталиране на приложение на Monica.

Изисквания

  • Ubuntu Server 18.04 LTS (Bionic Beaver)
  • Git
  • NPM (Мениджър на пакети на възли)
  • PHP 7.1+ или по-нова версия
  • MySQL
  • Nginx
  • Композитор

Забележка за Git : Git най-вероятно вече ще бъде инсталиран на сървъра на Ubuntu. В случай, че не е, можете лесно да го инсталирате, като изпълните:sudo apt install -y git

Проверете версията на Ubuntu.

lsb_release -ds
# Ubuntu 18.04 LTS

Създайте нов non-rootпотребителски акаунт с sudoдостъп и превключете към него.

adduser johndoe --gecos "John Doe"
usermod -aG sudo johndoe
su - johndoe

ЗАБЕЛЕЖКА : Заменете johndoeс вашето потребителско име .

Настройте часовата зона.

sudo dpkg-reconfigure tzdata

Уверете се, че вашата система е актуална.

sudo apt update && sudo apt upgrade -y

Инсталирайте build-essentialи libpng-dev.

sudo apt install -y build-essential libpng-dev

Инсталирайте PHP

Инсталирайте PHP 7.2 и необходимите PHP разширения.

sudo apt install -y php7.2 php7.2-cli php7.2-fpm php7.2-common php7.2-mbstring php7.2-xml php7.2-mysql php7.2-curl php7.2-zip php7.2-intl

Проверете версията.

php --version

# PHP 7.2.5-0ubuntu0.18.04.1 (cli) (built: May  9 2018 17:21:02) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
#     with Zend OPcache v7.2.5-0ubuntu0.18.04.1, Copyright (c) 1999-2018, by Zend Technologies

Инсталирайте MySQL и настройте база данни

Инсталирайте MySQL.

sudo apt install -y mysql-server

Проверете версията.

mysql --version
# mysql  Ver 14.14 Distrib 5.7.22, for Linux (x86_64) using  EditLine wrapper

Изпълнете mysql_secure installationскрипта, за да подобрите сигурността на MySQL и задайте паролата за rootпотребителя на MySQL .

sudo mysql_secure_installation

Свържете се с обвивката на MySQL като root потребител.

sudo mysql -u root -p
# Enter password

Създайте празна MySQL база данни и потребител за Моника и запомнете идентификационните данни.

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

Инсталирайте и конфигурирайте Nginx

Инсталирайте Nginx.

sudo apt install -y nginx

Проверете версията.

sudo nginx -v
# nginx version: nginx/1.14.0 (Ubuntu)

Стартирайте sudo vim /etc/nginx/sites-available/monica.confи конфигурирайте Nginx за Моника.

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

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

    index index.php;

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

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
    }
}

Запазете файла и излезте.

Активирайте новата monica.confконфигурация, като свържете файла към sites-enabledдиректорията.

sudo ln -s /etc/nginx/sites-available/monica.conf /etc/nginx/sites-enabled/

Тествайте конфигурацията.

sudo nginx -t

Презаредете Nginx.

sudo systemctl reload nginx.service

Инсталирайте Node.js и NPM

Инсталирайте Node.js.

curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -
sudo apt install -y nodejs

Проверете версиите на Node.js и npm.

node -v && npm -v
# v10.2.1
# 5.6.0

Инсталирайте Composer

Инсталирайте 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

Проверете версията.

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

Инсталирайте и конфигурирайте Моника

Създайте празна основна папка на документа, където трябва да бъде инсталирана Monica.

sudo mkdir -p /var/www/monica

Придвижете се до главната папка на документа.

cd /var/www/monica

Промяна на собствеността върху /var/www/monicaпапката на потребител johndoe.

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

Клонирайте хранилището на Monica към него.

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

ЗАБЕЛЕЖКА : Намерете най-новата официална версия на страницата за версии на GitHub и актуализирайте номера на версията по-горе до най-новата версия.

Изпълнете следното, за да създадете своя собствена версия на променливите на средата, необходими за проекта.

cp .env.example .env

Актуализирайте .envфайла според вашите специфични нужди. Не забравяйте да зададете DB_USERNAMEи DB_PASSWORDс настройките, използвани преди това.

Инсталирайте всички пакети.

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

Инсталирайте всички предни зависимости и инструменти, необходими за компилиране на активи.

npm install yarn
npm install

Компилирайте JS и CSS активите.

npm run production

Генерирайте ключ за приложение. Това APP_KEYавтоматично ще настрои правилната стойност.

php artisan key:generate

Изпълнете миграциите и заредете базата данни и папките за символни връзки.

php artisan setup:production

Променете собствеността върху /var/www/monicaдиректорията на www-data.

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

Възможен проблем: Структурата vue-directive-tooltipна директорията на пакета NPM е променена, но monicahqконфигурацията все още не я е променила (към 09/2019 г.). За да коригирате това, следният ред /var/www/monica/resources/assets/js/app.jsтрябва да бъде променен от:

import 'vue-directive-tooltip/css/index.css'
to
import 'vue-directive-tooltip/src/css/index.css'

Инсталацията е завършена. Отворете своя домейн във вашия уеб браузър и следвайте инструкциите, показани на екрана.

Оставете коментар

Възходът на машините: Реални приложения на AI

Възходът на машините: Реални приложения на AI

Изкуственият интелект не е в бъдещето, тук е точно в настоящето. В този блог Прочетете как приложенията за изкуствен интелект са повлияли на различни сектори.

DDOS атаки: кратък преглед

DDOS атаки: кратък преглед

Вие също сте жертва на DDOS атаки и сте объркани относно методите за превенция? Прочетете тази статия, за да разрешите вашите запитвания.

Чудили ли сте се как хакерите печелят пари?

Чудили ли сте се как хакерите печелят пари?

Може би сте чували, че хакерите печелят много пари, но чудили ли сте се някога как печелят такива пари? нека обсъдим.

Революционни изобретения на Google, които ще улеснят живота ви.

Революционни изобретения на Google, които ще улеснят живота ви.

Искате ли да видите революционни изобретения на Google и как тези изобретения промениха живота на всяко човешко същество днес? След това прочетете в блога, за да видите изобретенията на Google.

Friday Essential: Какво се случи с колите, задвижвани от изкуствен интелект?

Friday Essential: Какво се случи с колите, задвижвани от изкуствен интелект?

Концепцията за самоуправляващи се автомобили да тръгват по пътищата с помощта на изкуствен интелект е мечта, която имаме от известно време. Но въпреки няколкото обещания, те не се виждат никъде. Прочетете този блог, за да научите повече…

Технологична сингулярност: далечно бъдеще на човешката цивилизация?

Технологична сингулярност: далечно бъдеще на човешката цивилизация?

Тъй като науката се развива с бързи темпове, поемайки много от нашите усилия, рискът да се подложим на необяснима сингулярност също нараства. Прочетете какво може да означава сингулярността за нас.

Функционалности на референтните архитектурни слоеве за големи данни

Функционалности на референтните архитектурни слоеве за големи данни

Прочетете блога, за да разберете различни слоеве в архитектурата на големи данни и техните функционалности по най-простия начин.

Еволюция на съхранението на данни – инфографика

Еволюция на съхранението на данни – инфографика

Методите за съхранение на данните може да се развиват от раждането на данните. Този блог обхваща развитието на съхранението на данни на базата на инфографика.

6 невероятни предимства от наличието на интелигентни домашни устройства в живота ни

6 невероятни предимства от наличието на интелигентни домашни устройства в живота ни

В този дигитално задвижван свят устройствата за интелигентен дом се превърнаха в решаваща част от живота. Ето няколко невероятни предимства на интелигентните домашни устройства за това как те правят живота ни струващ и по-опростен.

Актуализацията на допълнението на macOS Catalina 10.15.4 причинява повече проблеми, отколкото решава

Актуализацията на допълнението на macOS Catalina 10.15.4 причинява повече проблеми, отколкото решава

Наскоро Apple пусна macOS Catalina 10.15.4 допълнителна актуализация за отстраняване на проблеми, но изглежда, че актуализацията причинява повече проблеми, водещи до блокиране на mac машини. Прочетете тази статия, за да научите повече