GNU/Linux >> Linux Esercitazione >  >> Cent OS

Come installare Restyaboard su CentOS 7

Restyaboard è un'applicazione per schede Kanban gratuita e open source. È la migliore alternativa self-hosted a Trello. È scritto in PHP e utilizza PostgreSQL per archiviare il suo database.

In questo tutorial, installeremo Restyaboard sul server CentOS 7.

Prerequisito

  • Server CentOS 7 minimo
  • Privilegi di root

Passaggio 1:installa Nginx

Prima di installare qualsiasi pacchetto si consiglia di aggiornare i pacchetti e il repository utilizzando il comando seguente.

yum -y update

Nginx non è disponibile sul repository CentOS YUM predefinito, quindi dovremo installare anche il repository EPEL. Puoi installare EPEL digitando:

yum -y install epel-release

Ora puoi installare nginx digitando:

yum -y install nginx

Al termine dell'installazione, puoi eseguire i seguenti comandi per avviare nginx e consentirne l'avvio automatico all'avvio utilizzando i seguenti comandi.

systemctl start nginx systemctl enable nginx

Nginx dovrebbe essere in esecuzione sul tuo server ora.

Passaggio 2 - Installa e configura PHP-FPM con Mbstring

Restyaboard supporta PHP 7.0, quindi installeremo PHP 7.0 per la massima sicurezza e prestazioni. PHP 7.0 non è disponibile nel repository YUM o EPEL, quindi dovremo installare il repository Webtatic per lo stesso. Esegui il comando seguente per installare il repository Webtatic.

rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

Ora installa PHP 7.0 con PHP-FPM insieme ad altri moduli richiesti.

yum -y install php70w php70w-fpm php70w-devel php70w-cli php70w-curl php70w-pgsql php70w-mbstring php70w-ldap php70w-pear php70w-imap php70w-xml php70w-pecl-imagick ImageMagick

Al termine dell'installazione, dovremo configurare alcune cose. Per impostazione predefinita, PHP-FPM è configurato per l'uso con Apache, dovrai cambiare gli utenti in modo che possa funzionare anche con nginx. Modifica il file /etc/php-fpm.d/www.conf utilizzando il tuo editor di testo preferito. In questo tutorial useremo nano editor. Se non hai installato nano, puoi eseguire yum -y install nano.

nano /etc/php-fpm.d/www.conf

Ora trova le seguenti righe e cambia Apache in nginx.

; RPM: apache Choosed to be able to access some dir as httpd
user = nginx
; RPM: Keep a group allowed to write in log dir.
group = nginx

Invece di usare una porta del server, useremo un file socket per PHP-FPM. Trova la riga seguente.

listen = 127.0.0.1:9000

e cambialo nella riga seguente.

listen = /run/php-fpm/php7.0-fpm.sock

Quindi, trova le seguenti righe.

;listen.owner = nobody
;listen.group = nobody
;listen.mode = 0660

Modificare i valori come segue:

listen.owner = nginx
listen.group = nginx
listen.mode = 0660

Inoltre, dovrai impostare il fuso orario nel file di configurazione PHP. Modifica il file di configurazione PHP usando il comando:

nano /etc/php.ini

Trova la riga seguente e decommenta la riga e imposta il fuso orario in base alla tua regione. Ad esempio:

[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
date.timezone = Asia/Kolkata

Decommenta la riga cgi.fix_pathinfo e cambia il valore in 0.

cgi.fix_pathinfo=0

Inoltre dovrai anche installare GeoIP. Esegui il comando seguente per installare GeoIP.

yum -y install GeoIP-devel

Ora abilita l'estensione GeoIP aggiungendo la seguente riga alla fine di /etc/php.ini

extension=geoip.so

Avvia PHP-FPM e abilitalo all'avvio all'avvio utilizzando i seguenti comandi.

systemctl start php-fpm systemctl enable php-fpm

Quindi riavvia nginx usando il seguente comando.

systemctl restart nginx

Fase 3 - Installazione e configurazione dei dati PostgreSQL

PostgreSQL è un sistema di gestione di database relazionali a oggetti open source. Restyaboard utilizza PostgreSQL per archiviare il suo database.

PostgreSQL non è disponibile nel repository YUM o EPEL, dovrai installare il repository PostgreSQL.

rpm -Uvh https://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-7-x86_64/pgdg-centos96-9.6-3.noarch.rpm

Per installare PostgreSQL, esegui il seguente comando.

yum -y install postgresql96-server postgresql96-contrib

Il comando precedente installerà PostgreSQL insieme a tutte le dipendenze richieste nel tuo sistema, prima di utilizzare il software, dovremo eseguire il comando seguente per inizializzare il database.

/usr/pgsql-9.6/bin/postgresql96-setup initdb

Una volta installato PostgreSQL, è il momento di configurarlo. Modifica /var/lib/pgsql/9.6/data/pg_hba.conf per abilitare l'autenticazione basata su MD5.

nano /var/lib/pgsql/9.6/data/pg_hba.conf

Trova le seguenti righe e cambia peer in trust e idnet in md5.

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     peer
# IPv4 local connections:
host    all             all             127.0.0.1/32            ident
# IPv6 local connections:
host    all             all             ::1/128                 ident

Una volta aggiornata, la configurazione dovrebbe apparire come quella mostrata di seguito.

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     trust
# IPv4 local connections:
host    all             all             127.0.0.1/32            md5
# IPv6 local connections:
host    all             all             ::1/128                 md5

Ora avvia il server PostgreSQL e abilitalo per l'avvio automatico all'avvio utilizzando i seguenti comandi:

systemctl start postgresql-9.6 systemctl enable postgresql-9.6

Ora cambia la password per l'utente PostgreSQL predefinito che è stato creato durante l'installazione di PostgreSQL.

passwd postgres

Ora accedi usando l'utente PostgreSQL usando il seguente comando.

su - postgres

Il comando precedente accederà alla shell di postgres

Ora crea un nuovo utente digitando:

createuser rb_user

Ora passa alla shell di PostgreSQL usando il seguente comando.

psql

Vedrai che il prompt sulla shell è cambiato in postgres - #. Ora esegui la seguente query per impostare una password per l'utente appena creato per il database Restyaboard.

ALTER USER rb_user WITH ENCRYPTED password 'StrongPassword';

Assicurati di utilizzare un punto e virgola alla fine della query. La query precedente ti chiederà la password di rb_user due volte. Ora crea un nuovo database per il database PostgreSQL usando la seguente query.

CREATE DATABASE rb_data OWNER rb_user ENCODING 'UTF8' TEMPLATE template0;

La query precedente creerà un database chiamato rb_data con codifica UTf8 utilizzando template0 e la proprietà verrà fornita a rb_user.

Esci dalla shell psql alla normale shell utente della shell dell'utente postgres usando il comando seguente.

\q

e passa di nuovo all'utente root usando il comando exit.

Fase 4 - Scarica Restyaboard

Poiché abbiamo tutte le dipendenze pronte, ora possiamo scaricare Restyaboard. Esegui il comando seguente per scaricare la versione distribuibile pronta.

cd /usr/share/nginx/html wget https://github.com/RestyaPlatform/board/releases/download/v0.4.2/board-v0.4.2.zip

Puoi sempre trovare il link all'ultima versione nella pagina Restyaboard Github.

Ora estrai l'archivio usando i seguenti comandi. Se non hai unzip installato, puoi eseguire yum -y install unzip.

unzip board-v0.4.2.zip -d board

Una volta estratto l'archivio, importare il file SQL utilizzando il seguente comando.

psql -d rb_data -f "/usr/share/nginx/html/board/sql/restyaboard_with_empty_data.sql" -U rb_user

Ora modifica il file di configurazione di Restyaboard per aggiornare le credenziali del database.

nano /usr/share/nginx/html/board/server/php/config.inc.php

Trova le seguenti righe.

define('R_DB_HOST', 'localhost');
define('R_DB_USER', 'restya');
define('R_DB_PASSWORD', 'hjVl2!rGd');
define('R_DB_NAME', 'restyaboard');
define('R_DB_PORT', 5432);

Modificalo in base al nome del database, nome utente e password del database che abbiamo creato di recente per archiviare i dati Restyaboard. Una volta terminato, dovrebbe apparire come mostrato di seguito.

define('R_DB_HOST', 'localhost');
define('R_DB_USER', 'rb_user');
define('R_DB_PASSWORD', 'StrongPassword');
define('R_DB_NAME', 'rb_data');
define('R_DB_PORT', 5432);

Passaggio 5:configurazione del blocco server Nginx

La configurazione del blocco del server Retyboard nginx viene fornita con l'archivio zip. Puoi copiare il file di configurazione nella posizione del file di configurazione di nginx usando il comando seguente.

cp /usr/share/nginx/html/board/restyaboard.conf /etc/nginx/conf.d

Ora dovrai apportare alcune modifiche al file. Apri il file di configurazione utilizzando il tuo editor di testo preferito.

nano /etc/nginx/conf.d/restyaboard.conf

All'inizio della configurazione, trova la seguente riga.

server {
        listen 80 default_server;
        server_name _;

Rimuovi il testo del server_predefinito e fornisci il tuo nome di dominio dopo il nome del server. Dovrebbe apparire come mostrato di seguito.

server {
        listen 80;
        server_name board.yourdomain.com;

Trova anche la seguente riga:

 root /usr/share/nginx/html;

e

 location / {
                root /usr/share/nginx/html/client;
        }

e

root /usr/share/nginx/html/client;

Modificare la riga sopra in base alla cartella di installazione di Restyaboard. Dovrebbe apparire come mostrato di seguito.

root /usr/share/nginx/html/board;

e

 location / {
                root /usr/share/nginx/html/board/client;
        }

e

root /usr/share/nginx/html/board/client

Trova anche la riga:

fastcgi_pass    unix:/run/php/php7.0-fpm.sock;

Modificalo come segue:

fastcgi_pass    unix:/run/php-fpm/php7.0-fpm.sock;

Puoi chiudere il file ora. Ora fornisci la proprietà e l'autorizzazione appropriate utilizzando i seguenti comandi.

chown -R nginx:nginx /usr/share/nginx/html/board/
chmod -R go+w "/usr/share/nginx/html/board/media"
chmod -R go+w "/usr/share/nginx/html/board/client/img"
chmod -R go+w "/usr/share/nginx/html/board/tmp/cache"
chmod -R 0755 /usr/share/nginx/html/board/server/php/shell/*.sh

Infine, aggiungi le voci cron per consentire l'esecuzione delle attività pianificate utilizzando i seguenti comandi.

echo "*/5 * * * * /usr/share/nginx/html/board/server/php/shell/instant_email_notification.sh" >> /var/spool/cron/root
echo "0 * * * * /usr/share/nginx/html/board/server/php/shell/periodic_email_notification.sh" >> /var/spool/cron/root
echo "*/30 * * * * /usr/share/nginx/html/board/server/php/shell/imap.sh" >> /var/spool/cron/root
echo "*/5 * * * * /usr/share/nginx/html/board/server/php/shell/webhook.sh" >> /var/spool/cron/root
echo "*/5 * * * * /usr/share/nginx/html/board/server/php/shell/card_due_notification.sh" >> /var/spool/cron/root

Ora dovrai disabilitare il tuo SELinux perché la configurazione del proxy non funziona con le politiche di SELinux. Per disabilitare temporaneamente SELinux senza riavviare il server, eseguire il comando seguente.

setenforce 0

Per disabilitare completamente SELinux dovrai modificare il file /etc/selinux/config.

nano /etc/selinux/config

Trova la riga seguente:

SELINUX=enforcing

Cambialo in:

SELINUX=disabled

Quindi riavvia Nginx usando il seguente comando.

systemctl restart nginx

Ora puoi accedere al server andando al seguente URL.

http://board.yourdomain.com

Vedrai la seguente schermata di accesso.

Ora accedi usando il nome utente admin e la password restya. Una volta effettuato l'accesso, vedrai la  schermata seguente.

Per creare una nuova bacheca, fai clic sulla freccia nell'angolo sinistro della pagina e fai clic su Aggiungi bacheca o organizzazione.

Fornisci un nome e scegli un modello per creare una nuova bacheca.

Dopo aver creato la bacheca, apparirà come mostrato di seguito.

Per accedere al pannello di amministrazione, puoi fare clic sul pulsante Admin nell'angolo in basso a destra e quindi fare clic su Impostazioni nella barra in alto.

Restyaboard è ora installato sul tuo server, ora puoi utilizzare la kanban board per migliorare il flusso di lavoro del tuo progetto.


Cent OS
  1. Come installare e configurare Nginx su CentOS 7

  2. Come installare Nginx su CentOS 7

  3. Come installare R su CentOS 7

  4. Come installare phpMyAdmin con Nginx su CentOS 7

  5. Come installare Linux Dash su CentOS 6

Come installare Nginx con PHP-FastCGI su CentOS 6

Come installare Magento con Nginx su CentOS 7

Come installare Nginx su CentOS 6

Come installare Nginx su CentOS 7

Come installare Nginx su CentOS 7?

Come installare Nginx su CentOS 8