Как да инсталирате DreamFactory с отворен код на CentOS 7

DreamFactory е програма с отворен код, която може да превърне всяка база данни в RESTful API платформа.

DreamFactory може да бъде разгърнат на различни платформи. В тази статия ще инсталираме DreamFactory Open Source Edition на сървър на CentOS 7.

Предпоставки

Стъпка 1: Актуализирайте системата

Влезте във вашата система като потребител на sudo от SSH терминал и след това актуализирайте системата, както следва:

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

Стъпка 2: Инсталирайте Apache

Както се изисква от DreamFactory, трябва да инсталирате уеб сървъра Apache с помощта на YUM:

sudo yum install httpd -y

Премахнете началната страница на Apache по подразбиране:

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

Деактивирайте публичната директория на Apache и списъка с файлове:

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

Стартирайте услугата Apache и я активирайте при стартиране на системата:

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

Стъпка 3: Инсталирайте MariaDB

За този урок ще използваме MariaDB 10.1 като сървър на база данни, който DreamFactory ще използва.

3.1 Настройте репозиторията на MariaDB 10.1 YUM

Използвайте следния сегмент от кода, за да създадете MariaDB 10.1 YUM репо:

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 Инсталирайте MariaDB 10.1 с помощта на YUM

sudo yum install MariaDB-server MariaDB-client -y

3.3 Стартирайте и активирайте услугата MariaDB

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

3.4 Защитете инсталацията на MariaDB

sudo /usr/bin/mysql_secure_installation

Отговорете на въпросите по следния начин и не забравяйте да въведете вашата собствена парола за MariaDB root.

  • Въведете текущата парола за root (въведете за none): Просто натиснете Enterбутона
  • Задаване на root парола? [Да/не]:Y
  • Нова парола: <your-password>
  • Въведете отново нова парола: <your-password>
  • Премахване на анонимни потребители? [Да/не]:Y
  • Да се ​​забрани ли дистанционното влизане в root? [Да/не]:Y
  • Премахване на тестовата база данни и достъпа до нея? [Да/не]:Y
  • Презареждане на таблиците с привилегии сега? [Да/не]:Y

3.5 Създайте база данни MariaDB за DreamFactory

Влезте в обвивката на MySQL като root:

mysql -u root -p

Въведете паролата за root на MariaDB, която сте задали в стъпка 3.4, за да влезете.

В обвивката на MySQL създайте база данни dreamfactory, потребител на база данни dreamfactoryuserи нейната парола, yourpasswordкакто следва.

Забележка: От съображения за сигурност ТРЯБВА да замените трите примерни параметъра, споменати по-горе, със свои собствени.

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: Инсталирайте PHP 7.x и Composer

4.1 Инсталирайте PHP 7.1 и необходимите разширения

На CentOS 7 можете да инсталирате PHP 7.1 и необходимите PHP разширения с помощта на 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 Инсталиране на Composer

Инсталирайте най-новата версия на Composer, която е 1.3.1към момента на писане, както е посочено по-долу.

Забележка: Инструкциите по-горе може да се променят, ако Composer актуализира своите инструкции за инсталиране. Като такъв, винаги трябва да проверявате официалната страница за изтегляне на Composer, за да получите най-актуалните инструкции за инсталиране.

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 Направете Composer глобално достъпен

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

Стъпка 5: Инсталирайте Git и DreamFactory

5.1 Инсталирайте Git

sudo yum install git -y

5.2 Инсталирайте DreamFactory

Изтеглете най-новата стабилна версия на DreamFactory, която е 2.4.2по времето, когато е написана тази статия, след което инсталирайте DreamFactory и зависимостите, както следва:

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

Използвайте следната команда, за да създадете .envфайл за съхраняване на конфигурации на DreamFactory:

sudo php artisan dreamfactory:setup

Когато бъдете подканени, въведете настройките на базата данни, както следва:

  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

Изпълнете отново същата команда, за да настроите първия администратор на потребителя:

sudo php artisan dreamfactory:setup

Когато бъдете подканени, въведете идентификационни данни, както следва:

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 Подгответе се за уеб достъп

Настройте виртуален хост за DreamFactory. Използвайте следния кодов сегмент, за да настроите виртуален хост. Не забравяйте да замените стойностите на ServerAdmin, ServerName, ServerAlias, Errorlog, и CustomLogсъс свои собствени.

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

Поставете вашите промени в сила, като рестартирате услугата Apache:

sudo systemctl restart httpd.service

Променете правилата на защитната стена, за да разрешите уеб достъп:

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

Стъпка 6: Достъп до DreamFactory

Насочете уеб браузър�� си към http://203.0.113.1за достъп до DreamFactory и след това използвайте администраторския имейл адрес и парола, които сте задали по-рано, за да влезете.

Това завършва нашия урок. Благодаря за четенето.


Инсталирайте Plesk на CentOS 7

Инсталирайте Plesk на CentOS 7

Използване на различна система? Plesk е собствен контролен панел за уеб хост, който позволява на потребителите да администрират своите лични и/или клиентски уебсайтове, бази данни

Как да инсталирате Squid Proxy на CentOS

Как да инсталирате Squid Proxy на CentOS

Squid е популярна, безплатна програма за Linux, която ви позволява да създадете уеб прокси за препращане. В това ръководство ще видите как да инсталирате Squid на CentOS, за да ви обърне

Как да инсталирате Lighttpd (LLMP стек) на CentOS 6

Как да инсталирате Lighttpd (LLMP стек) на CentOS 6

Въведение Lighttpd е форк на Apache, чиято цел е да бъде много по-малко ресурсоемка. Той е лек, откъдето идва и името му, и е доста лесен за използване. Инсталирайте

Конфигуриране на статична мрежа и IPv6 на CentOS 7

Конфигуриране на статична мрежа и IPv6 на CentOS 7

VULTR наскоро направи промени от своя страна и вече всичко трябва да работи добре от кутията с активиран NetworkManager. Ако желаете да деактивирате

Промяна на Icinga2 за използване на модел главен/клиент на CentOS 6 или CentOS 7

Промяна на Icinga2 за използване на модел главен/клиент на CentOS 6 или CentOS 7

Icinga2 е мощна система за наблюдение и когато се използва в модел главен-клиент, тя може да замени необходимостта от проверки на базата на NRPE. Главният клиент

Как да инсталирате Apache Cassandra 3.11.x на CentOS 7

Как да инсталирате Apache Cassandra 3.11.x на CentOS 7

Използване на различна система? Apache Cassandra е безплатна система за управление на база данни NoSQL с отворен код, която е проектирана да осигури мащабируемост, висока

Как да инсталирате Microweber на CentOS 7

Как да инсталирате Microweber на CentOS 7

Използване на различна система? Microweber е CMS и онлайн магазин с отворен код за плъзгане и пускане. Изходният код на Microweber се хоства на GitHub. Това ръководство ще ви покаже

Как да инсталирате Mattermost 4.1 на CentOS 7

Как да инсталирате Mattermost 4.1 на CentOS 7

Използване на различна система? Mattermost е самостоятелно хоствана алтернатива с отворен код на Slack SAAS услугата за съобщения. С други думи, с Mattermost, вие ca

Създаване на мрежа от сървъри на Minecraft с BungeeCord на Debian 8, Debian 9 или CentOS 7

Създаване на мрежа от сървъри на Minecraft с BungeeCord на Debian 8, Debian 9 или CentOS 7

Какво ви трябва Vultr VPS с поне 1 GB RAM. SSH достъп (с root/административни привилегии). Стъпка 1: Инсталиране на BungeeCord На първо място

Lets Encrypt на Plesk

Lets Encrypt на Plesk

Контролният панел на Plesk разполага с много приятна интеграция за Lets Encrypt. Lets Encrypt е един от единствените доставчици на SSL, които предоставят пълно сертификати

Позволява криптиране на cPanel

Позволява криптиране на cPanel

Lets Encrypt е сертифициращ орган, посветен на предоставянето на SSL сертификати безплатно. cPanel изгради чиста интеграция, така че вие ​​и вашият клиент

Как да инсталирате Concrete5 на CentOS 7

Как да инсталирате Concrete5 на CentOS 7

Използване на различна система? Concrete5 е CMS с отворен код, който предлага много отличителни и полезни функции за подпомагане на редакторите при лесното създаване на съдържание и

Как да инсталирате табло за преглед на CentOS 7

Как да инсталирате табло за преглед на CentOS 7

Използване на различна система? Review Board е безплатен инструмент с отворен код за преглед на изходен код, документация, изображения и много други. Това е уеб базиран софтуер

Настройте HTTP удостоверяване с Nginx на CentOS 7

Настройте HTTP удостоверяване с Nginx на CentOS 7

В това ръководство ще научите как да настроите HTTP удостоверяване за уеб сървър на Nginx, работещ на CentOS 7. Изисквания За да започнете, ще ви трябва

Как да инсталирате YOURLS на CentOS 7

Как да инсталирате YOURLS на CentOS 7

YOURLS (Your Own URL Shortener) е приложение за съкращаване на URL адреси и анализ на данни с отворен код. В тази статия ще разгледаме процеса на инсталиране

Как да инсталирате и конфигурирате ArangoDB на CentOS 7

Как да инсталирате и конфигурирате ArangoDB на CentOS 7

Използване на различна система? Въведение ArangoDB е NoSQL база данни с отворен код с гъвкав модел на данни за документи, графики и ключ-стойности. то е

Използване на Etckeeper за контрол на версиите на /etc

Използване на Etckeeper за контрол на версиите на /etc

Въведение Директорията /etc/ играе критична роля в начина, по който функционира една Linux система. Причината за това е, че почти всяка системна конфигурация

Защо трябва да използвате SSHFS? Как да монтирате отдалечена файлова система със SSHFS на CentOS 6

Защо трябва да използвате SSHFS? Как да монтирате отдалечена файлова система със SSHFS на CentOS 6

Много системни администратори управляват големи количества сървъри. Когато файловете трябва да бъдат достъпни на различни сървъри, влизането във всеки от тях поотделно ок

Настройване на сървър на Half Life 2 на CentOS 6

Настройване на сървър на Half Life 2 на CentOS 6

Този урок ще обхване процеса на инсталиране на сървър за игри Half Life 2 на CentOS 6 System. Стъпка 1: Инсталиране на предпоставките За да настроите ou

Как да инсталирате Laravel GitScrum на CentOS 7

Как да инсталирате Laravel GitScrum на CentOS 7

Laravel GitScrum или GitScrum е инструмент за производителност с отворен код, предназначен да помогне на екипите за разработка да внедрят методологията на Scrum по подобен начин.

Възходът на машините: Реални приложения на AI

Възходът на машините: Реални приложения на AI

Изкуственият интелект не е в бъдещето, тук е точно в настоящето. В този блог Прочетете как приложенията за изкуствен интелект са повлияли на различни сектори.

DDOS атаки: кратък преглед

DDOS атаки: кратък преглед

Вие също сте жертва на DDOS атаки и сте объркани относно методите за превенция? Прочетете тази статия, за да разрешите вашите запитвания.

Чудили ли сте се как хакерите печелят пари?

Чудили ли сте се как хакерите печелят пари?

Може би сте чували, че хакерите печелят много пари, но чудили ли сте се някога как печелят такива пари? нека обсъдим.

Революционни изобретения на Google, които ще улеснят живота ви.

Революционни изобретения на Google, които ще улеснят живота ви.

Искате ли да видите революционни изобретения на Google и как тези изобретения промениха живота на всяко човешко същество днес? След това прочетете в блога, за да видите изобретенията на Google.

Friday Essential: Какво се случи с колите, задвижвани от изкуствен интелект?

Friday Essential: Какво се случи с колите, задвижвани от изкуствен интелект?

Концепцията за самоуправляващи се автомобили да тръгват по пътищата с помощта на изкуствен интелект е мечта, която имаме от известно време. Но въпреки няколкото обещания, те не се виждат никъде. Прочетете този блог, за да научите повече…

Технологична сингулярност: далечно бъдеще на човешката цивилизация?

Технологична сингулярност: далечно бъдеще на човешката цивилизация?

Тъй като науката се развива с бързи темпове, поемайки много от нашите усилия, рискът да се подложим на необяснима сингулярност също нараства. Прочетете какво може да означава сингулярността за нас.

Еволюция на съхранението на данни – инфографика

Еволюция на съхранението на данни – инфографика

Методите за съхранение на данните може да се развиват от раждането на данните. Този блог обхваща развитието на съхранението на данни на базата на инфографика.

Функционалности на референтните архитектурни слоеве за големи данни

Функционалности на референтните архитектурни слоеве за големи данни

Прочетете блога, за да разберете различни слоеве в архитектурата на големи данни и техните функционалности по най-простия начин.

6 невероятни предимства от наличието на интелигентни домашни устройства в живота ни

6 невероятни предимства от наличието на интелигентни домашни устройства в живота ни

В този дигитално задвижван свят устройствата за интелигентен дом се превърнаха в решаваща част от живота. Ето няколко невероятни предимства на интелигентните домашни устройства за това как те правят живота ни струващ и по-опростен.

Актуализацията на допълнението на macOS Catalina 10.15.4 причинява повече проблеми, отколкото решава

Актуализацията на допълнението на macOS Catalina 10.15.4 причинява повече проблеми, отколкото решава

Наскоро Apple пусна macOS Catalina 10.15.4 допълнителна актуализация за отстраняване на проблеми, но изглежда, че актуализацията причинява повече проблеми, водещи до блокиране на mac машини. Прочетете тази статия, за да научите повече