जिूूपी

Restyaboard op CentOS 7 installeren

Restyaboard op CentOS 7 installeren

Scan nu uw web-server voor malware met ISPProtect. Krijg een gratis proefperiode.

Restyaboard is een gratis en open-source Kanban-bordtoepassing. Het is het beste zelf-gehoste alternatief voor Trello. Het is geschreven in PHP en gebruikt PostgreSQL om zijn database op te slaan.

In deze zelfstudie zullen we Restyaboard op de CentOS 7-server installeren.

Eerste vereiste

  • Minimale CentOS 7-server
  • Rootprivileges

Stap 1 - Installeer Nginx

Voordat u een pakket installeert, is het raadzaam om de pakketten en de repository bij te werken met behulp van de volgende opdracht.

yum -y update

Nginx is niet beschikbaar in de standaard CentOS YUM-repository, daarom moeten we ook de EPEL-repository installeren. U kunt EPEL installeren door het volgende te typen:

yum - installeer epel-release

Nu kun je nginx installeren door te typen:

yum -y installeer nginx

Nadat de installatie is voltooid, kunt u de volgende opdrachten uitvoeren om nginx te starten en deze automatisch in te schakelen tijdens het opstarten met behulp van de volgende opdrachten.

systemctl start nginx systemctl enable nginx

Nginx zou nu op uw server moeten draaien.

Stap 2 - Installeer en configureer PHP-FPM met Mbstring

Restyaboard ondersteunt PHP 7.0, daarom zullen we PHP 7.0 installeren voor maximale veiligheid en prestaties. PHP 7.0 is niet beschikbaar in de YUM- of EPEL-repository, daarom moeten we Webtatic-repository hiervoor installeren. Voer de volgende opdracht uit om de Webtatic-repository te installeren.

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

Installeer nu PHP 7.0 met PHP-FPM samen met andere vereiste modules.

yum -y installeer 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

Zodra de installatie is voltooid, moeten we enkele dingen configureren. Standaard is PHP-FPM geconfigureerd om te gebruiken met Apache, je moet de gebruikers veranderen zodat het ook met nginx kan werken. Bewerk het /etc/php-fpm.d/www.conf-bestand met uw favoriete teksteditor. In deze zelfstudie gebruiken we een nano-editor. Als u geen nano hebt geïnstalleerd, kunt u yum -y install nano uitvoeren.

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

Zoek nu de volgende regels en verander apache in nginx.

; RPM: apache Kozen om toegang te krijgen tot een aantal dir als httpd user = nginx; RPM: Houd een groep toegestaan ​​om te schrijven in log dir. groep = nginx

In plaats van een serverpoort te gebruiken, gebruiken we een socketbestand voor PHP-FPM. Zoek de volgende regel.

listen = 127.0.0.1: 9000

en verander het naar de volgende regel.

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

Zoek vervolgens de volgende regels.

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

Verander de waarden naar het volgende:

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

Verder moet je de tijdzone in PHP-configuratiebestand instellen. Bewerk PHP-configuratiebestand met behulp van de opdracht:

nano / etc / php.ini

Zoek de volgende regel en spreek de regel af en stel de tijdzone in volgens uw regio. Bijvoorbeeld:

[Datum]; Bepaalt de standaardtijdzone gebruikt door de datumfuncties; http://php.net/date.timezone date.timezone = Asia / Kolkata

Maak de regel cgi.fix_pathinfo ongedaan en wijzig de waarde in 0.

cgi.fix_pathinfo = 0

Verder moet je ook GeoIP installeren. Voer de volgende opdracht uit om GeoIP te installeren.

yum -y installeert GeoIP-devel

Schakel nu GeoIP-extensie in door de volgende regel toe te voegen aan het einde van /etc/php.ini

extension = geoip.so

Start PHP-FPM en schakel het in om te starten bij het opstarten met behulp van de volgende opdrachten.

systemctl start php-fpm systemctl schakel php-fpm in

Start vervolgens nginx opnieuw op met behulp van de volgende opdracht.

systemctl herstart nginx

Stap 3 - Installeren en configureren van PostgreSQL-gegevens

PostgreSQL is een open source object - relationeel databasebeheersysteem. Restyaboard gebruikt PostgreSQL om zijn database op te slaan.

PostgreSQL is niet beschikbaar in de YUM- of EPEL-repository, u zult PostgreSQL-repository moeten installeren.

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

Om PostgreSQL te installeren, voert u de volgende opdracht uit.

yum -y installeer postgresql96-server postgresql96-contrib

De bovenstaande opdracht installeert PostgreSQL samen met alle vereiste afhankelijkheden in uw systeem, voordat de software wordt gebruikt, moeten we de volgende opdracht uitvoeren om de database te initialiseren.

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

Nadat PostgreSQL is geïnstalleerd, is het tijd om het te configureren. Bewerk de /var/lib/pgsql/9.6/data/pg_hba.conf om op MD5 gebaseerde authenticatie in te schakelen.

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

Zoek de volgende regels en verander peer to trust en idnet naar md5.

# TYPE DATABASE GEBRUIKERSADRES METHODE # "lokaal" is voor Unix domein socketverbindingen alleen lokaal alle alle # IPv4 lokale verbindingen: host alle alle 127.0.0.1 / 32 ident # IPv6 lokale verbindingen: host alles all: 1 / 128 ident

Zodra de configuratie is bijgewerkt, ziet het er als volgt uit.

# TYPE DATABASE GEBRUIKERSADRES METHODE # "lokaal" is voor Unix-domeincontactaansluitingen alleen lokaal alle vertrouwen # IPv4 lokale verbindingen: host alle alle 127.0.0.1 / 32 md5 # IPv6 lokale verbindingen: host alles: 1 / 128 md5

Start nu de PostgreSQL-server en schakel deze automatisch in tijdens het opstarten met de volgende opdrachten:

systemctl start postgresql-9.6 systemctl enable postgresql-9.6

Wijzig nu het wachtwoord voor de standaard PostgreSQL-gebruiker die is gemaakt tijdens de installatie van PostgreSQL.

passwd postgres

Meld u nu aan met de PostgreSQL-gebruiker met behulp van de volgende opdracht.

su - postgres

Het bovenstaande commando logt in op de shell van postgres

Maak nu een nieuwe gebruiker door te typen:

createuser rb_user

Schakel nu met de volgende opdracht naar de PostgreSQL-shell.

psql

Je zult zien dat de prompt op de shell is veranderd in postgres - #. Voer nu de volgende query uit om een ​​wachtwoord in te stellen voor de nieuwe gebruiker voor de Restyaboard-database.

ALTER GEBRUIKER rb_user MET VERSLEUTELD wachtwoord 'StrongPassword';

Zorg ervoor dat u aan het einde van de query een puntkomma gebruikt. De bovenstaande query zal u tweemaal om het wachtwoord vragen van de rb_user. Maak nu een nieuwe database voor de PostgreSQL-database met behulp van de volgende query.

DATABASE MAKEN rb_data EIGENAAR rb_user CODERING 'UTF8' SJABLOON template0;

De bovenstaande query maakt een database met de naam rb_data met UTf8-codering met behulp van template0 en het eigendom wordt aan rb_user verstrekt.

Sluit de psql-shell naar de normale shell-gebruikersshell van postgres-gebruikers met behulp van de volgende opdracht.

q

en schakel opnieuw over naar de root-gebruiker met behulp van exit-opdracht.

Stap 4 - Restyaboard downloaden

Omdat we alle afhankelijkheden klaar hebben, kunnen we nu Restyaboard downloaden. Voer de volgende opdracht uit om de klaar-implementeerbare versie te downloaden.

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

U kunt altijd de link naar de nieuwste versie vinden op de Restyaboard Github-pagina.

Pak nu het archief uit met behulp van de volgende opdrachten. Als u geen unzip hebt geïnstalleerd, kunt u yum uitvoeren - y installeer unzip.

unzip board-v0.4.2.zip-d board

Nadat het archief is uitgepakt, importeert u het SQL-bestand met behulp van de volgende opdracht.

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

Bewerk nu het Restyaboard-configuratiebestand om databasereferenties bij te werken.

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

Zoek de volgende regels.

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

Wijzig dit volgens de databasenaam, gebruikersnaam en het wachtwoord van de database die we recent hebben gemaakt om Restyaboard-gegevens op te slaan. Als het eenmaal is gedaan, ziet het er als volgt uit.

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

Stap 5 - Configureer Nginx Server Block

Restyboard nginx-serverblokconfiguratie wordt geleverd bij het zip-archief. U kunt het configuratiebestand kopiëren naar de locatie van het nginx-configuratiebestand met behulp van de volgende opdracht.

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

Nu moet je een paar wijzigingen aanbrengen in het bestand. Open het configuratiebestand met uw favoriete teksteditor.

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

Zoek aan het begin van de configuratie de volgende regel.

server {luister 80 default_server; server naam _;

Verwijder standaardservertekst en geef uw domeinnaam op na de servernaam. Het zou er uit moeten zien zoals hieronder getoond.

server {luister 80; servernaam board.uwdomein.com;

Vind ook de volgende regel:

 root / usr / share / nginx / html;

en

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

en

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

Wijzig de bovenstaande regel volgens de Restyaboard-installatiemap. Het ziet er als volgt uit.

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

en

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

en

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

Vind ook de regel:

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

Verander het naar het volgende:

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

U kunt het bestand nu sluiten. Geef nu het juiste eigendom en de juiste toestemming met behulp van de volgende opdrachten.

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

Voeg ten slotte de cron-vermeldingen toe om geplande taken uit te voeren met behulp van de volgende opdrachten.

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

Nu moet je je SELinux uitschakelen omdat de proxyconfiguratie niet werkt met het SELinux-beleid. Om SELinux tijdelijk uit te schakelen zonder de server opnieuw te starten, voert u de volgende opdracht uit.

Setenforce 0

Om de SELinux volledig uit te schakelen, moet je / etc / selinux / config-bestand bewerken.

nano / etc / selinux / config

Zoek de volgende regel:

SELINUX = afdwingen

Verander het in:

SELINUX = uitgeschakeld

Start Nginx vervolgens opnieuw op met behulp van de volgende opdracht.

systemctl herstart nginx

U kunt nu toegang krijgen tot de server door naar de volgende URL te gaan.

http://board.yourdomain.com

U ziet het volgende inlogscherm.

Inlogscherm van Restyaboard

Meld u nu aan met de gebruikersnaam admin en wachtwoord restya. Nadat u bent ingelogd, ziet u het volgende scherm.

Restyaboard Dashbard

Om een ​​nieuw bord te maken, klikt u op de pijl in de linkerhoek van de pagina en klikt u op Bestuur toevoegen of Organisatie.

Maak een nieuw bord

Geef een naam op en kies een sjabloon om een ​​nieuw bord te maken.

Kies sjabloon voor bord

Nadat u het bord hebt gemaakt, ziet het er als volgt uit.

Nieuw bord in Restyaboard

Om toegang te krijgen tot het beheerdersdashboard, klikt u op de knop Beheerder in de rechterbenedenhoek en klikt u vervolgens op Instellingen op de bovenste balk.

Toegang admin paneel

Restyaboard is nu op uw server geïnstalleerd, u kunt nu het kanban-bord gebruiken om de workflow van uw project te verbeteren.

bron