How to Install DreamFactory Open Source on CentOS 7

DreamFactory is an open source program which can turn any database into a RESTful API platform.

DreamFactory can be deployed on various platforms. In this article, we will be installing DreamFactory Open Source Edition on a CentOS 7 server.

Prerequisites

  • A CentOS 7 x64 server instance.
  • A sudo user.

Step 1: Update the system

Log into your system as a sudo user from an SSH terminal, and then update the system as follows:

sudo yum install epel-release -y
sudo yum update -y
sudo shutdown -r now

Step 2: Install Apache

As required by DreamFactory, you need to install the Apache web server using YUM:

sudo yum install httpd -y

Remove the default Apache welcome page:

sudo sed -i 's/^/#&/g' /etc/httpd/conf.d/welcome.conf

Disable Apache’s public directory and file listing:

sudo sed -i "s/Options Indexes FollowSymLinks/Options FollowSymLinks/" /etc/httpd/conf/httpd.conf

Start the Apache service and enable it on system boot:

sudo systemctl start httpd.service
sudo systemctl enable httpd.service

Step 3: Install MariaDB

For this tutorial, we will be using MariaDB 10.1 as the database server DreamFactory will be using.

3.1 Setup the MariaDB 10.1 YUM repo

Norėdami sukurti MariaDB 10.1 YUM repo, naudokite šį kodo segmentą:

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 Įdiekite MariaDB 10.1 naudodami YUM

sudo yum install MariaDB-server MariaDB-client -y

3.3 Paleiskite ir įjunkite MariaDB paslaugą

sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service

3.4 Apsaugokite MariaDB diegimą

sudo /usr/bin/mysql_secure_installation

Atsakykite į klausimus taip ir būtinai įveskite savo MariaDB root slaptažodį.

  • Įveskite dabartinį root slaptažodį (įveskite, jei neturite): Tiesiog paspauskite Entermygtuką
  • Nustatyti root slaptažodį? [Y/n]:Y
  • Naujas Slaptažodis: <your-password>
  • Iš naujo įveskite naują slaptažodį: <your-password>
  • Pašalinti anoniminius naudotojus? [Y/n]:Y
  • Neleisti root prisijungimo nuotoliniu būdu? [Y/n]:Y
  • Pašalinti bandymų duomenų bazę ir prieigą prie jos? [Y/n]:Y
  • Dabar iš naujo įkelti privilegijų lenteles? [Y/n]:Y

3.5 Sukurkite MariaDB duomenų bazę, skirtą DreamFactory

Prisijunkite prie „MySQL“ apvalkalo kaip root:

mysql -u root -p

Norėdami prisijungti, įveskite MariaDB root slaptažodį, kurį nustatėte 3.4 veiksme.

MySQL apvalkale sukurkite duomenų bazę dreamfactory, duomenų bazės vartotoją dreamfactoryuserir jo slaptažodį, yourpasswordkaip nurodyta toliau.

Pastaba: saugumo sumetimais PRIVALOTE pakeisti tris pirmiau minėtus pavyzdinius parametrus savais.

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;

4 veiksmas: įdiekite PHP 7.x ir Composer

4.1 Įdiekite PHP 7.1 ir būtinus plėtinius

„CentOS 7“ galite įdiegti PHP 7.1 ir būtinus PHP plėtinius naudodami „Webtatic YUM“ repo:

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 Įdiekite kompozitorių

Įdiekite naujausią „Composer“ leidimą, kuris yra 1.3.1rašymo metu, kaip nurodyta toliau.

Pastaba: anksčiau pateiktos instrukcijos gali pasikeisti, jei kompozitorius atnaujins diegimo instrukcijas. Todėl visada turėtumėte apsilankyti oficialiame „Composer“ atsisiuntimo puslapyje , kad gautumėte naujausias diegimo instrukcijas.

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 Make Composer globally available

sudo mv composer.phar /usr/local/bin/composer

Step 5: Install Git and DreamFactory

5.1 Install Git

sudo yum install git -y

5.2 Install DreamFactory

Download the latest stable release of DreamFactory, which is 2.4.2 at the time this article was written, then install DreamFactory and dependencies as follows:

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

Use the following command to create a .env file to store DreamFactory configurations:

sudo php artisan dreamfactory:setup

When prompted, input database settings as follows:

  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

Run the same command again in order to setup the first admin user:

sudo php artisan dreamfactory:setup

When prompted, input credentials as follows:

Creating the first admin user...

 Enter your first name:
 > John

 Enter your last name:
 > Doe

 Enter display name:
 > John Doe

 Enter your email address?:
 > admin@example.com

 Choose a password:
 > <your-admin-password>

 Re-enter password:
  > <your-admin-password>

5.3 Prepare for web access

Set up a virtual host for DreamFactory. Use the following code segment to setup a virtual host. Remember to replace the values of ServerAdmin, ServerName, ServerAlias, Errorlog, and CustomLog with your own ones.

cat <<EOF | sudo tee -a /etc/httpd/conf.d/dreamfactory.conf
<VirtualHost *:80>
ServerAdmin admin@example.com
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

Put your modifications into effect by restarting the Apache service:

sudo systemctl restart httpd.service

Modify firewall rules in order to allow web access:

sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --reload

Step 6: Access DreamFactory

Point your web browser to http://203.0.113.1 to access DreamFactory, and then use the admin email address and password you set earlier to log in.

This concludes our tutorial. Thanks for reading.

Palikti komentarą

Mašinų augimas: AI pritaikymas realiame pasaulyje

Mašinų augimas: AI pritaikymas realiame pasaulyje

Dirbtinis intelektas nėra ateityje, jis čia, dabartyje Šiame tinklaraštyje Skaitykite, kaip dirbtinio intelekto programos paveikė įvairius sektorius.

DDOS atakos: trumpa apžvalga

DDOS atakos: trumpa apžvalga

Ar taip pat esate DDOS atakų auka ir esate sumišęs dėl prevencijos metodų? Perskaitykite šį straipsnį, kad išspręstumėte savo užklausas.

Ar kada nors susimąstėte, kaip įsilaužėliai uždirba pinigų?

Ar kada nors susimąstėte, kaip įsilaužėliai uždirba pinigų?

Galbūt girdėjote, kad įsilaužėliai uždirba daug pinigų, bet ar kada susimąstėte, kaip jie uždirba tokius pinigus? padiskutuokime.

Revoliuciniai „Google“ išradimai, kurie palengvins jūsų gyvenimą.

Revoliuciniai „Google“ išradimai, kurie palengvins jūsų gyvenimą.

Ar norite pamatyti revoliucinius „Google“ išradimus ir kaip šie išradimai pakeitė kiekvieno žmogaus gyvenimą šiandien? Tada skaitykite tinklaraštį, kad pamatytumėte „Google“ išradimus.

Penktadienio esminiai dalykai: kas atsitiko AI varomiems automobiliams?

Penktadienio esminiai dalykai: kas atsitiko AI varomiems automobiliams?

Savavaledžių automobilių koncepcija, kuri išvažiuotų į kelius su dirbtinio intelekto pagalba, yra svajonė, kurią jau kurį laiką svajojame. Tačiau nepaisant kelių pažadų, jų niekur nematyti. Skaitykite šį tinklaraštį, kad sužinotumėte daugiau…

Technologinis išskirtinumas: tolima žmogaus civilizacijos ateitis?

Technologinis išskirtinumas: tolima žmogaus civilizacijos ateitis?

Kadangi mokslas sparčiai vystosi, perimdamas daug mūsų pastangų, taip pat didėja rizika, kad pateksime į nepaaiškinamą singuliarumą. Skaitykite, ką mums gali reikšti išskirtinumas.

Didžiųjų duomenų atskaitos architektūros sluoksnių funkcijos

Didžiųjų duomenų atskaitos architektūros sluoksnių funkcijos

Skaitykite tinklaraštį, kad paprasčiausiai sužinotumėte apie skirtingus didžiųjų duomenų architektūros sluoksnius ir jų funkcijas.

Duomenų saugojimo raida – infografika

Duomenų saugojimo raida – infografika

Duomenų saugojimo metodai gali būti tobulinami nuo pat Duomenų gimimo. Šiame tinklaraštyje, remiantis infografika, aprašoma duomenų saugojimo raida.

6 nuostabūs išmaniųjų namų įrenginių privalumai

6 nuostabūs išmaniųjų namų įrenginių privalumai

Šiame skaitmeniniu būdu pagrįstame pasaulyje išmanieji namų įrenginiai tapo svarbia gyvenimo dalimi. Štai keletas nuostabių išmaniųjų namų įrenginių privalumų, kaip jie daro mūsų gyvenimą vertą gyventi ir paprastesnį.

„macOS Catalina 10.15.4“ priedo atnaujinimas kelia daugiau problemų, nei sprendžia

„macOS Catalina 10.15.4“ priedo atnaujinimas kelia daugiau problemų, nei sprendžia

Neseniai „Apple“ išleido „macOS Catalina 10.15.4“ priedą, skirtą problemoms išspręsti, tačiau atrodo, kad dėl atnaujinimo kyla daugiau problemų, dėl kurių „Mac“ įrenginiai blokuojami. Norėdami sužinoti daugiau, perskaitykite šį straipsnį