Jak zainstalować Monikę na Ubuntu 18.04 LTS

Monica to system zarządzania relacjami osobistymi typu open source. Pomyśl o tym jak o CRM (popularne narzędzie używane przez zespoły sprzedażowe w świecie korporacyjnym) dla twoich przyjaciół lub rodziny. Jego kod źródłowy jest publicznie hostowany na GitHub . W tym przewodniku omówimy proces instalacji aplikacji Monica.

Wymagania

  • Ubuntu Server 18.04 LTS (Bionic Beaver)
  • Git
  • NPM (Menedżer pakietów węzłów)
  • PHP 7.1+ lub nowszy
  • MySQL
  • Nginx
  • Kompozytor

Uwaga na temat Git : Git najprawdopodobniej zostanie już zainstalowany na serwerze Ubuntu. W przeciwnym razie możesz go łatwo zainstalować, uruchamiając:sudo apt install -y git

Sprawdź wersję Ubuntu.

lsb_release -ds
# Ubuntu 18.04 LTS

Utwórz nowe non-rootkonto użytkownika z sudodostępem i przejdź do niego.

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

UWAGA : Zamień na johndoeswoją nazwę użytkownika .

Ustaw strefę czasową.

sudo dpkg-reconfigure tzdata

Upewnij się, że twój system jest aktualny.

sudo apt update && sudo apt upgrade -y

Zainstaluj build-essentiali libpng-dev.

sudo apt install -y build-essential libpng-dev

Zainstaluj PHP

Zainstaluj PHP 7.2 i wymagane rozszerzenia 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

Sprawdź wersję.

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

Zainstaluj MySQL i skonfiguruj bazę danych

Zainstaluj MySQL.

sudo apt install -y mysql-server

Sprawdź wersję.

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

Uruchom mysql_secure installationskrypt, aby poprawić bezpieczeństwo MySQL i ustaw hasło dla rootużytkownika MySQL .

sudo mysql_secure_installation

Połącz się z powłoką MySQL jako użytkownik root.

sudo mysql -u root -p
# Enter password

Utwórz pustą bazę danych MySQL i użytkownika dla Moniki i zapamiętaj poświadczenia.

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

Zainstaluj i skonfiguruj Nginx

Zainstaluj Nginx.

sudo apt install -y nginx

Sprawdź wersję.

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

Uruchom sudo vim /etc/nginx/sites-available/monica.confi skonfiguruj Nginx dla Moniki.

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;
    }
}

Zapisz plik i wyjdź.

Aktywuj nową monica.confkonfigurację, łącząc plik z sites-enabledkatalogiem.

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

Przetestuj konfigurację.

sudo nginx -t

Załaduj ponownie Nginx.

sudo systemctl reload nginx.service

Zainstaluj Node.js i NPM

Zainstaluj Node.js.

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

Sprawdź wersje Node.js i npm.

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

Zainstaluj Composer

Zainstaluj 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

Sprawdź wersję.

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

Zainstaluj i skonfiguruj Monikę

Utwórz pusty folder główny dokumentu, w którym powinna być zainstalowana Monica.

sudo mkdir -p /var/www/monica

Przejdź do folderu głównego dokumentu.

cd /var/www/monica

Zmień własność /var/www/monicafolderu na użytkownika johndoe.

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

Sklonuj do niego repozytorium Monica.

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

UWAGA : Znajdź najnowszą oficjalną wersję na stronie wydań w GitHub i zaktualizuj powyższy numer wersji do najnowszej wersji.

Uruchom następujące polecenie, aby utworzyć własną wersję zmiennych środowiskowych wymaganych dla projektu.

cp .env.example .env

Zaktualizuj .envplik do swoich potrzeb. Nie zapomnij ustawić DB_USERNAMEi DB_PASSWORDprzy użyciu wcześniej używanych ustawień.

Zainstaluj wszystkie pakiety.

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

Zainstaluj wszystkie zależności front-end i narzędzia potrzebne do kompilacji zasobów.

npm install yarn
npm install

Skompiluj zasoby JS i CSS.

npm run production

Wygeneruj klucz aplikacji. Spowoduje to automatyczne ustawienie APP_KEYprawidłowej wartości.

php artisan key:generate

Uruchom migracje i zainicjuj foldery bazy danych i dowiązań symbolicznych.

php artisan setup:production

Zmień własność /var/www/monicakatalogu na www-data.

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

Możliwy problem: w pakiecie NPM vue-directive-tooltipzmieniono strukturę katalogów, ale monicahqconfig jeszcze go nie zmienił (stan na 09/2019). Aby to naprawić, /var/www/monica/resources/assets/js/app.jsnależy zmienić następujący wiersz w :

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

Instalacja jest zakończona. Otwórz domenę w przeglądarce i postępuj zgodnie z instrukcjami wyświetlanymi na ekranie.



Funkcjonalności warstw architektury referencyjnej Big Data

Funkcjonalności warstw architektury referencyjnej Big Data

Przeczytaj blog, aby w najprostszy sposób poznać różne warstwy w architekturze Big Data i ich funkcjonalności.

Rewolucyjne wynalazki Google, które ułatwią Twoje życie.

Rewolucyjne wynalazki Google, które ułatwią Twoje życie.

Chcesz zobaczyć rewolucyjne wynalazki Google i jak te wynalazki zmieniły życie każdego człowieka dzisiaj? Następnie czytaj na blogu, aby zobaczyć wynalazki Google.

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

Pozostań w kontakcie dzięki aplikacji WhatsApp na komputer 24*7

Pozostań w kontakcie dzięki aplikacji WhatsApp na komputer 24*7

Whatsapp w końcu uruchomił aplikację Desktop dla użytkowników komputerów Mac i Windows. Teraz możesz łatwo uzyskać dostęp do Whatsapp z systemu Windows lub Mac. Dostępne dla Windows 8+ i Mac OS 10.9+

5 przykładów, które dowodzą, że energetyka jądrowa nie zawsze jest zła

5 przykładów, które dowodzą, że energetyka jądrowa nie zawsze jest zła

Energia jądrowa jest zawsze pogardzana, nigdy jej nie szanujemy z powodu przeszłych wydarzeń, ale nie zawsze jest zła. Przeczytaj post, aby dowiedzieć się więcej na ten temat.

Friday Essential: Co się stało z samochodami sterowanymi przez sztuczną inteligencję?

Friday Essential: Co się stało z samochodami sterowanymi przez sztuczną inteligencję?

Koncepcja autonomicznych samochodów, które wyjadą na drogi za pomocą sztucznej inteligencji, to marzenie, które mamy już od jakiegoś czasu. Ale pomimo kilku obietnic nigdzie ich nie widać. Przeczytaj ten blog, aby dowiedzieć się więcej…

Czy AI może walczyć z rosnącą liczbą ataków ransomware?

Czy AI może walczyć z rosnącą liczbą ataków ransomware?

Wzrasta liczba ataków ransomware, ale czy sztuczna inteligencja może pomóc w radzeniu sobie z najnowszym wirusem komputerowym? Czy AI jest odpowiedzią? Przeczytaj tutaj, wiedz, że sztuczna inteligencja jest zmorą lub zgubą

5 przydatnych narzędzi sztucznej inteligencji, które uproszczą Twoje życie

5 przydatnych narzędzi sztucznej inteligencji, które uproszczą Twoje życie

Sztuczna inteligencja nie jest dla ludzi nową nazwą. Ponieważ sztuczna inteligencja jest włączona do każdego strumienia, jednym z nich jest opracowywanie narzędzi zwiększających ludzką wydajność i dokładność. Skorzystaj z tych niesamowitych narzędzi uczenia maszynowego i uprość swoje codzienne zadania.

Wgląd w 26 technik analizy Big Data: część 2

Wgląd w 26 technik analizy Big Data: część 2

Zawsze potrzebujemy Big Data Analytics do efektywnego zarządzania danymi. W tym artykule omówiliśmy kilka technik analizy Big Data. Sprawdź ten artykuł.

Ataki DDOS: krótki przegląd

Ataki DDOS: krótki przegląd

Czy jesteś również ofiarą ataków DDOS i nie masz pewności co do metod zapobiegania? Przeczytaj ten artykuł, aby rozwiązać swoje pytania.