Cara Memasang Monica di FreeBSD 12

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

  • Sistem FreeBSD 12
  • Git
  • Versi PHP 7.2 atau lebih tinggi dengan sambungan PHP berikut:
    • json
    • iconv
    • intl
    • opcache
    • mbstring
    • xml
    • mysqli
    • pdo_mysql
    • bcmath
    • kerinting
    • gmp
    • zip
    • gd
  • MariaDB
  • Nginx
  • Komposer

Sebelum awak bermula

Semak versi FreeBSD.

uname -ro
# FreeBSD 12.0-RELEASE

Pastikan sistem FreeBSD anda terkini.

freebsd-update fetch install
pkg update && pkg upgrade -y

Pasang pakej yang diperlukan.

pkg install -y sudo vim unzip curl wget bash socat git libpng-dev

Buat akaun pengguna baru dengan nama pengguna pilihan anda. Kami akan menggunakannya johndoe.

adduser

# Username: johndoe
# Full name: John Doe
# Uid (Leave empty for default): <Enter>
# Login group [johndoe]: <Enter>
# Login group is johndoe. Invite johndoe into other groups? []: wheel
# Login class [default]: <Enter>
# Shell (sh csh tcsh nologin) [sh]: bash
# Home directory [/home/johndoe]: <Enter>
# Home directory permissions (Leave empty for default): <Enter>
# Use password-based authentication? [yes]: <Enter>
# Use an empty password? (yes/no) [no]: <Enter>
# Use a random password? (yes/no) [no]: <Enter>
# Enter password: your_secure_password
# Enter password again: your_secure_password
# Lock out the account after creation? [no]: <Enter>
# OK? (yes/no): yes
# Add another user? (yes/no): no
# Goodbye!

Jalankan visudoarahan dan unmentasikan %wheel ALL=(ALL) ALLbaris, untuk membolehkan ahli wheelkumpulan melaksanakan sebarang arahan.

visudo

# Uncomment by removing hash (#) sign
# %wheel ALL=(ALL) ALL

Kini, beralih kepada pengguna yang baru anda buat dengan su.

su - johndoe

CATATAN: Ganti johndoedengan nama pengguna anda.

Sediakan zon waktu.

sudo tzsetup

Pasang PHP

Pasang PHP, serta pelanjutan PHP yang diperlukan.

sudo pkg install -y php72 php72-mbstring php72-tokenizer php72-pdo php72-pdo_mysql php72-openssl php72-hash php72-json php72-phar php72-filter php72-zlib php72-dom php72-xml php72-xmlwriter php72-xmlreader php72-pecl-imagick php72-curl php72-session php72-ctype php72-iconv php72-gd php72-simplexml php72-zip php72-filter php72-tokenizer php72-calendar php72-fileinfo php72-intl php72-phar php72-soap php72-xmlrpc php72-opcache php72-mysqli php72-bcmath php72-gmp

Semak versi.

php --version

# PHP 7.2.19 (cli) (built: Jun 20 2019 01:25:01) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies

Pautan lembut php.ini-productionke php.ini.

sudo ln -s /usr/local/etc/php.ini-production /usr/local/etc/php.ini

Dayakan dan mulakan PHP-FPM.

sudo sysrc php_fpm_enable=yes
sudo service php-fpm start

Pasang MariaDB dan sediakan pangkalan data

Pasang MariaDB.

sudo pkg install -y mariadb102-client mariadb102-server

Semak versi.

mysql --version
# mysql  Ver 15.1 Distrib 10.2.24-MariaDB, for FreeBSD12.0 (amd64) using readline 5.1

Mulakan dan dayakan MariaDB.

sudo sysrc mysql_enable="yes" 
sudo service mysql-server start

Jalankan mysql_secure_installationskrip untuk meningkatkan keselamatan pemasangan anda.

sudo mysql_secure_installation

Log masuk ke MariaDB sebagai pengguna root.

mysql -u root -p
# Enter password:

Buat pangkalan data dan pengguna baru. Ingat kelayakan untuk pengguna baru ini.

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

Pasang dan konfigurasikan Nginx

Pasang Nginx.

sudo pkg install -y nginx

Semak versi.

nginx -v
# nginx version: nginx/1.14.2

Dayakan dan mulailah Nginx.

sudo sysrc nginx_enable=yes
sudo service nginx start

Jalankan sudo vim /usr/local/etc/nginx/monica.confdan sediakan Nginx untuk Monica.

server {

  listen 80;
  listen [::]:80;
  server_name example.com;
  root /usr/local/www/monica/public;

  index index.php;

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

  location ~ \.php$ {
    try_files $uri =404;
    include fastcgi_params;
    fastcgi_index index.php;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_pass 127.0.0.1:9000;
  }

}

Simpan fail dan keluar.

Sekarang kita perlu memasukkan monica.confdalam nginx.conffail utama .

Jalankan sudo vim /usr/local/etc/nginx/nginx.confdan tambah baris berikut ke http {}blok.

include monica.conf;

Uji konfigurasi.

sudo nginx -t

Muat semula Nginx.

sudo service nginx reload

Pasang Komposer

Pasang Komposer secara global.

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('SHA384', 'composer-setup.php') === '48e3236262b34d30969dca3c37281b3b4bbe3221bda826ac6a9a62d6444cdb0dcd0615698a5cbe587c3f0fe57a54d8f5') { 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.8.6 2019-06-11 15:03:05

Pasang dan konfigurasi Monica

Buat folder akar dokumen kosong di mana Monica perlu dipasang.

sudo mkdir -p /usr/local/www/monica

Navigasi ke folder root dokumen.

cd /usr/local/www/monica

Tukar pemilikan /usr/local/www/monicafolder ke pengguna johndoe.

sudo chown -R johndoe:johndoe /usr/local/www/monica

Klikan repositori Monica padanya.

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

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 .envfail mengikut keperluan khusus anda. Jangan lupa untuk menetapkan DB_USERNAMEdan DB_PASSWORDdengan tetapan yang digunakan sebelumnya.

Pasang semua pakej.

composer install --no-interaction --no-suggest --no-dev

Hasilkan kunci aplikasi. Ini akan ditetapkan APP_KEYke nilai yang betul secara automatik.

php artisan key:generate

Jalankan migrasi dan benih pangkalan data dan folder symlink.

php artisan setup:production -v

Tukar pemilikan /usr/local/www/monicadirektori ke www.

 sudo chown -R www:www /usr/local/www/monica

Pemasangan selesai. Buka domain anda di penyemak imbas web anda dan ikuti arahan yang ditunjukkan di skrin.



Leave a Comment

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

6 Perkara Yang Sangat Menggila Tentang Nintendo Switch

6 Perkara Yang Sangat Menggila Tentang Nintendo Switch

Ramai daripada anda tahu Switch akan keluar pada Mac 2017 dan ciri baharunya. Bagi yang tidak tahu, kami telah menyediakan senarai ciri yang menjadikan 'Tukar' sebagai 'gajet yang mesti ada'.

Janji Teknologi Yang Masih Tidak Ditepati

Janji Teknologi Yang Masih Tidak Ditepati

Adakah anda menunggu gergasi teknologi memenuhi janji mereka? semak apa yang masih belum dihantar.

Fungsi Lapisan Seni Bina Rujukan Data Besar

Fungsi Lapisan Seni Bina Rujukan Data Besar

Baca blog untuk mengetahui lapisan berbeza dalam Seni Bina Data Besar dan fungsinya dengan cara yang paling mudah.

Bagaimana AI Boleh Mengambil Automasi Proses ke Tahap Seterusnya?

Bagaimana AI Boleh Mengambil Automasi Proses ke Tahap Seterusnya?

Baca ini untuk mengetahui cara Kecerdasan Buatan semakin popular di kalangan syarikat berskala kecil dan cara ia meningkatkan kebarangkalian untuk menjadikan mereka berkembang dan memberikan pesaing mereka kelebihan.

CAPTCHA: Berapa Lama Ia Boleh Kekal Sebagai Teknik Berdaya maju Untuk Perbezaan Manusia-AI?

CAPTCHA: Berapa Lama Ia Boleh Kekal Sebagai Teknik Berdaya maju Untuk Perbezaan Manusia-AI?

CAPTCHA telah menjadi agak sukar untuk diselesaikan oleh pengguna dalam beberapa tahun kebelakangan ini. Adakah ia dapat kekal berkesan dalam pengesanan spam dan bot pada masa hadapan?

Keunikan Teknologi: Masa Depan Tamadun Manusia yang Jauh?

Keunikan Teknologi: Masa Depan Tamadun Manusia yang Jauh?

Apabila Sains Berkembang pada kadar yang pantas, mengambil alih banyak usaha kita, risiko untuk menundukkan diri kita kepada Ketunggalan yang tidak dapat dijelaskan juga meningkat. Baca, apakah makna ketunggalan bagi kita.

Teleperubatan Dan Penjagaan Kesihatan Jauh: Masa Depan Ada Di Sini

Teleperubatan Dan Penjagaan Kesihatan Jauh: Masa Depan Ada Di Sini

Apakah teleperubatan, penjagaan kesihatan jauh dan impaknya kepada generasi akan datang? Adakah ia tempat yang baik atau tidak dalam situasi pandemik? Baca blog untuk mencari paparan!

Pernahkah Anda Terfikir Bagaimana Penggodam Mendapatkan Wang?

Pernahkah Anda Terfikir Bagaimana Penggodam Mendapatkan Wang?

Anda mungkin pernah mendengar bahawa penggodam memperoleh banyak wang, tetapi pernahkah anda terfikir bagaimana mereka memperoleh wang seperti itu? Mari berbincang.

Kemas Kini Tambahan macOS Catalina 10.15.4 Menyebabkan Lebih Banyak Isu Daripada Penyelesaian

Kemas Kini Tambahan macOS Catalina 10.15.4 Menyebabkan Lebih Banyak Isu Daripada Penyelesaian

Baru-baru ini Apple mengeluarkan macOS Catalina 10.15.4 kemas kini tambahan untuk menyelesaikan masalah tetapi nampaknya kemas kini itu menyebabkan lebih banyak masalah yang membawa kepada pemusnahan mesin mac. Baca artikel ini untuk mengetahui lebih lanjut