Monica adalah sistem pengurusan hubungan peribadi sumber terbuka. Fikirkannya sebagai CRM (alat popular yang digunakan oleh pasukan jualan di dunia korporat) untuk rakan atau keluarga anda. Kod sumbernya dihoskan secara terbuka di GitHub . Dalam panduan ini, kami akan membahas proses pemasangan aplikasi Monica.
Keperluan
- Pelayan Ubuntu 18.04 LTS (Bionic Beaver)
- Git
- NPM (Pengurus Pakej Node)
- PHP 7.1+ atau lebih baru
- MySQL
- Nginx
- Komposer
Nota mengenai Git : Git kemungkinan besar akan dipasang pada pelayan Ubuntu. Sekiranya tidak, anda boleh dengan mudah memasangnya dengan berjalan:sudo apt install -y git
Semak versi Ubuntu.
lsb_release -ds
# Ubuntu 18.04 LTS
Buat non-root
akaun pengguna baru dengan sudo
akses dan beralih kepadanya.
adduser johndoe --gecos "John Doe"
usermod -aG sudo johndoe
su - johndoe
NOTA : Gantikan johndoe
dengan nama pengguna anda .
Sediakan zon waktu.
sudo dpkg-reconfigure tzdata
Pastikan sistem anda terkini.
sudo apt update && sudo apt upgrade -y
Pasang build-essential
dan libpng-dev
.
sudo apt install -y build-essential libpng-dev
Pasang PHP
Pasang PHP 7.2 dan pelanjutan PHP yang diperlukan.
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
Semak versi.
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
Pasang MySQL dan sediakan pangkalan data
Pasang MySQL.
sudo apt install -y mysql-server
Semak versi.
mysql --version
# mysql Ver 14.14 Distrib 5.7.22, for Linux (x86_64) using EditLine wrapper
Jalankan mysql_secure installation
skrip untuk meningkatkan keselamatan MySQL dan tetapkan kata laluan untuk root
pengguna MySQL .
sudo mysql_secure_installation
Sambungkan ke shell MySQL sebagai pengguna root.
sudo mysql -u root -p
# Enter password
Buat pangkalan data MySQL yang kosong dan pengguna untuk Monica, dan ingat kelayakan.
CREATE DATABASE dbname;
GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
EXIT;
Pasang Nginx.
sudo apt install -y nginx
Semak versi.
sudo nginx -v
# nginx version: nginx/1.14.0 (Ubuntu)
Jalankan sudo vim /etc/nginx/sites-available/monica.conf
dan atur Nginx untuk Monica.
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;
}
}
Simpan fail dan keluar.
Aktifkan monica.conf
konfigurasi baru dengan menghubungkan fail ke sites-enabled
direktori.
sudo ln -s /etc/nginx/sites-available/monica.conf /etc/nginx/sites-enabled/
Uji konfigurasi.
sudo nginx -t
Muat semula Nginx.
sudo systemctl reload nginx.service
Pasang Node.js dan NPM
Pasang Node.js.
curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -
sudo apt install -y nodejs
Periksa versi Node.js dan npm.
node -v && npm -v
# v10.2.1
# 5.6.0
Pasang Komposer
Pasang Komposer.
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
Semak versi.
composer --version
# Composer version 1.6.5 2018-05-04 11:44:59
Buat folder akar dokumen kosong di mana Monica perlu dipasang.
sudo mkdir -p /var/www/monica
Navigasi ke folder root dokumen.
cd /var/www/monica
Tukar pemilikan /var/www/monica
folder ke pengguna johndoe
.
sudo chown -R johndoe:johndoe /var/www/monica
Klikan repositori Monica padanya.
git clone https://github.com/monicahq/monica.git .
git checkout tags/v2.1.1
NOTA : Dapatkan versi rasmi terkini pada halaman siaran di GitHub dan kemas kini nombor versi di atas untuk keluaran terkini.
Jalankan yang berikut untuk membuat versi pembolehubah persekitaran anda sendiri yang diperlukan untuk projek itu.
cp .env.example .env
Kemas kini .env
fail mengikut keperluan khusus anda. Jangan lupa untuk menetapkan DB_USERNAME
dan DB_PASSWORD
dengan tetapan yang digunakan sebelumnya.
Pasang semua pakej.
composer install --no-interaction --no-suggest --no-dev --ignore-platform-reqs
Pasang semua kebergantungan depan dan alat yang diperlukan untuk menyusun aset.
npm install yarn
npm install
Susun aset JS dan CSS.
npm run production
Hasilkan kunci aplikasi. Ini akan ditetapkan APP_KEY
ke nilai yang betul secara automatik.
php artisan key:generate
Jalankan migrasi dan benih pangkalan data dan folder symlink.
php artisan setup:production
Tukar pemilikan /var/www/monica
direktori ke www-data
.
sudo chown -R www-data:www-data /var/www/monica
Isu yang mungkin: Pakej NPM vue-directive-tooltip
telah mempunyai struktur direktori itu berubah, tetapi monicahq
konfigurasi belum berubah lagi (sehingga 09/2019). Untuk membetulkannya, baris berikut /var/www/monica/resources/assets/js/app.js
perlu diubah daripada:
import 'vue-directive-tooltip/css/index.css'
to
import 'vue-directive-tooltip/src/css/index.css'
Pemasangan selesai. Buka domain anda di penyemak imbas web anda dan ikuti arahan yang ditunjukkan di skrin.