DreamFactory este un program open source care poate transforma orice bază de date într-o platformă API RESTful.
DreamFactory poate fi implementat pe diverse platforme. În acest articol, vom instala DreamFactory Open Source Edition pe un server CentOS 7.
Cerințe preliminare
Pasul 1: Actualizați sistemul
Conectați-vă la sistemul dvs. ca utilizator sudo de la un terminal SSH și apoi actualizați sistemul astfel:
sudo yum install epel-release -y
sudo yum update -y
sudo shutdown -r now
Pasul 2: Instalați Apache
După cum solicită DreamFactory, trebuie să instalați serverul web Apache folosind YUM:
sudo yum install httpd -y
Eliminați pagina implicită de bun venit Apache:
sudo sed -i 's/^/#&/g' /etc/httpd/conf.d/welcome.conf
Dezactivează directorul public Apache și listarea fișierelor:
sudo sed -i "s/Options Indexes FollowSymLinks/Options FollowSymLinks/" /etc/httpd/conf/httpd.conf
Porniți serviciul Apache și activați-l la pornirea sistemului:
sudo systemctl start httpd.service
sudo systemctl enable httpd.service
Pasul 3: Instalați MariaDB
Pentru acest tutorial, vom folosi MariaDB 10.1 pe care îl va folosi serverul de baze de date DreamFactory.
3.1 Configurarea repetiției MariaDB 10.1 YUM
Utilizați următorul segment de cod pentru a crea MariaDB 10.1 YUM repo:
cat <<EOF | sudo tee -a /etc/yum.repos.d/MariaDB.repo
# MariaDB 10.1 CentOS repository list - created 2017-01-14 03:11 UTC
# http://downloads.mariadb.org/mariadb/repositories/
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.1/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
EOF
3.2 Instalați MariaDB 10.1 folosind YUM
sudo yum install MariaDB-server MariaDB-client -y
3.3 Porniți și activați serviciul MariaDB
sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service
3.4 Securizați instalarea MariaDB
sudo /usr/bin/mysql_secure_installation
Răspundeți la întrebări după cum urmează și asigurați-vă că introduceți parola rădăcină MariaDB.
- Introduceți parola curentă pentru root (nu introduceți nimic): Apăsați
Enterbutonul
- Setați parola root? [Y / n]:
Y
- Parolă Nouă:
<your-password>
- Reintroduceți parola nouă:
<your-password>
- Ștergeți utilizatorii anonimi? [Y / n]:
Y
- Înlăturați conectarea root la distanță? [Y / n]:
Y
- Ștergeți baza de date de testare și accesați-o? [Y / n]:
Y
- Reîncărcați tabelele de privilegii acum? [Y / n]:
Y
3.5 Creați o bază de date MariaDB pentru DreamFactory
Conectați-vă la shell-ul MySQL ca root:
mysql -u root -p
Introduceți parola rădăcină MariaDB setată la pasul 3.4 pentru a vă autentifica.
În shell-ul MySQL, creați o bază de date dreamfactory, un utilizator al bazei de date dreamfactoryuserși parola acesteia yourpassworddupă cum urmează.
Notă: În scopuri de securitate, TREBUIE să înlocuiți cei trei parametri de probă menționați mai sus cu cei proprii.
CREATE DATABASE dreamfactory;
CREATE USER 'dreamfactoryuser'@'localhost' IDENTIFIED BY 'yourpassword';
GRANT ALL PRIVILEGES ON dreamfactory.* TO 'dreamfactoryuser'@'localhost' IDENTIFIED BY 'yourpassword' WITH GRANT OPTION;
FLUSH PRIVILEGES;
EXIT;
Pasul 4: Instalați PHP 7.x și Compozitor
4.1 Instalați PHP 7.1 și extensiile necesare
Pe CentOS 7, puteți instala PHP 7.1 și extensiile PHP necesare utilizând repoziția Webtatic YUM:
sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
sudo yum install mod_php71w php71w-common php71w-cli php71w-gd php71w-mbstring php71w-mcrypt php71w-xml php71w-mysqlnd php71w-pecl-mongodb -y
4.2 Instalați Composer
Instalați cea mai recentă versiune de Composer, care este 1.3.1la momentul scrierii, ca mai jos.
Notă: Instrucțiunile de mai sus se pot schimba în cazul în care Composer își actualizează instrucțiunile de instalare. Ca atare, ar trebui să consultați întotdeauna pagina oficială de descărcare Composer pentru a obține cele mai actualizate instrucțiuni de instalare.
cd
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('SHA384', 'composer-setup.php') === '55d6ead61b29c7bdee5cccfb50076874187bd9f21f65d8991d46ec5cc90518f447387fb9f76ebae1fbbacf329e583e30') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
4.3 Faceți Compozitorul disponibil la nivel global
sudo mv composer.phar /usr/local/bin/composer
Pasul 5: Instalează Git și DreamFactory
5.1 Instalați Git
sudo yum install git -y
5.2 Instalați DreamFactory
Descărcați cea mai recentă versiune stabilă a DreamFactory, care este 2.4.2la momentul în care a fost scris acest articol, apoi instalați DreamFactory și dependențele după cum urmează:
cd
wget https://github.com/dreamfactorysoftware/dreamfactory/archive/2.4.2.tar.gz
tar -zxvf 2.4.2.tar.gz
cd dreamfactory-2.4.2
composer install --no-dev
sudo mv ~/dreamfactory-2.4.2 /opt
sudo chown -R root:root /opt/dreamfactory-2.4.2
sudo chown -R apache:apache /opt/dreamfactory-2.4.2/storage/ /opt/dreamfactory-2.4.2/bootstrap/cache/
sudo chmod -R 2775 /opt/dreamfactory-2.4.2/storage/ /opt/dreamfactory-2.4.2/bootstrap/cache/
cd /opt/dreamfactory-2.4.2
Folosiți următoarea comandă pentru a crea un .envfișier pentru a stoca configurațiile DreamFactory:
sudo php artisan dreamfactory:setup
Când vi se solicită, setările bazei de date de intrare după cum urmează:
Which database would you like to use for system tables? [sqlite]:
[0] sqlite
[1] mysql
[2] pgsql
[3] sqlsrv
> 1
Enter your mysql Host:
> localhost
Enter your database name:
> dreamfactory
Enter your database username:
> dreamfactoryuser
Enter your database password:
> yourpassword
Re-enter your database password:
> yourpassword
Enter your Database Port [3306]:
> 3306
Executați din nou aceeași comandă pentru a configura primul utilizator admin:
sudo php artisan dreamfactory:setup
Când vi se solicită, introduceți datele de autentificare după cum urmează:
Creating the first admin user...
Enter your first name:
> John
Enter your last name:
> Doe
Enter display name:
> John Doe
Enter your email address?:
> [email protected]
Choose a password:
> <your-admin-password>
Re-enter password:
> <your-admin-password>
5.3 Pregătiți-vă pentru accesul web
Configurați o gazdă virtuală pentru DreamFactory. Utilizați următorul segment de cod pentru a configura o gazdă virtuală. Nu uitați să înlocuiți valorile ServerAdmin, ServerName, ServerAlias, Errorlog, și CustomLogcu cele proprii.
cat <<EOF | sudo tee -a /etc/httpd/conf.d/dreamfactory.conf
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot /opt/dreamfactory-2.4.2/public/
ServerName dreamfactory.example.com
ServerAlias www.dreamfactory.example.com
<Directory /opt/dreamfactory-2.4.2/public/>
Options FollowSymLinks
AllowOverride All
AllowOverride None
Require all granted
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^.*$ /index.php [L]
<LimitExcept GET HEAD PUT DELETE PATCH POST>
Allow from all
</LimitExcept>
</Directory>
ErrorLog /var/log/httpd/dreamfactory.example.com-error_log
CustomLog /var/log/httpd/dreamfactory.example.com-access_log common
</VirtualHost>
EOF
Faceți modificările în vigoare prin repornirea serviciului Apache:
sudo systemctl restart httpd.service
Modificați regulile firewallului pentru a permite accesul web:
sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --reload
Pasul 6: Accesați DreamFactory
Indicați browserul dvs. web pentru http://203.0.113.1a accesa DreamFactory, apoi utilizați adresa de e-mail de administrare și parola pe care le-ați setat mai devreme pentru a vă autentifica.
Acest lucru încheie tutorialul nostru. Mulțumesc pentru citit.